21

Python で を使用する方法があるかどうか疑問に思って.extendいますが、元のリストは変更しません。結果を次のようにしたいと思います。

>> li = [1, 2, 3, 4]  
>> li
[1, 2, 3, 4]  
>> li.extend([5, 6, 7])
[1, 2, 3, 4, 5, 6, 7]  
>> li
[1, 2, 3, 4]  

これをいくつかの異なる方法でグーグル検索しようとしましたが、これを説明する正しい言葉を見つけることができませんでした. Ruby には次のようなものがあります。元のリストを実際に変更したい場合は、次のようにします。li.extend!([5,6,7])それ以外の場合は、元のリストを変更せずに結果を返すだけです。これと同じものがPythonに存在しますか?

ありがとう!

4

2 に答える 2

52

Pythonの+演算子はリストを連結するためにオーバーロードされているため、次のようにします。

>>> li = [1, 2, 3, 4]
>>> new_list = li + [5, 6, 7]
>>> new_list
[1, 2, 3, 4, 5, 6, 7]
于 2013-03-18T05:20:39.190 に答える
3

私はそれが厄介であることを知っていますが、うまくいきます:

a = [1,2,3]
b = list(a)
b.extend([4,5])
于 2013-03-18T05:23:27.010 に答える