Pythonでリストに複数の値を追加する方法


175

Pythonでリストに複数の値を追加する方法を理解しようとしています。手動で値を入力したり、forループで追加操作を実行したりappendextend関数を実行したりするなど、いくつかの方法があることは知っています。

しかし、そうするためのもっときちんとした方法があるのだろうか?たぶん、特定のパッケージまたは関数ですか?


8
リストのドキュメントはもう見つかりましたか?
Martijn Pieters

5
あなたはそうするためのいくつかの方法があることを知っていると述べましたが、あなたが試みたものを示したり、あなたが知っている方法が十分ではない理由を説明したりしません。
役に立たない

よりもきちんとextend()定義しください。
フレデリックハミディ2013年

3
more neat == additional package dependencyもちろん@FrédéricHamidi !
hexparrot 2013年

1
この質問はどのようにトピック外と見なすことができますか?
VictorSchröder19年

回答:


352

sequenceメソッドlist.extendを使用して、別のリストや値のシーケンスを提供するその他のリストなど、あらゆる種類の反復可能オブジェクトからの複数の値でリストを拡張できます。

>>> lst = [1, 2]
>>> lst.append(3)
>>> lst.append(4)
>>> lst
[1, 2, 3, 4]

>>> lst.extend([5, 6, 7])
>>> lst.extend((8, 9, 10))
>>> lst
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

>>> lst.extend(range(11, 14))
>>> lst
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]

したがって、を使用list.append()て単一の値を追加したり、複数のlist.extend()を追加したりできます。


1
Pythonを使用した1日目に誰かにジェネレーターを導入するのは少し複雑です。
ダニエルローズマン2013年

1
@DanielRoseman私のポイントは、値はあらゆる種類の反復可能なシーケンスから取得できるということです。
2013年

6
拡張は、追加した要素の構造をと比較して保持しないことに注意してくださいappend()。追加を使用した例では、が得られ[1, 2, 3, 4, [5, 6, 7], (8, 9, 10), range(11, 14)]ます。Python 3
Yohan Obadia 2017年

1
@YohanObadia '17のPython 3がそうであった場合、それはもはやそうではありません-Python 3.7.7はpokeの説明とまったく同じです。
Post169

28

append関数以外に、「複数の値」によって別のリストを意味する場合は、単純にそれらを連結することができます。

>>> a = [1,2,3]
>>> b = [4,5,6]
>>> a + b
[1, 2, 3, 4, 5, 6]

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.