リストメソッドの append()
と extend()
の違いは何ですか?
x = [1, 2, 3]
x.append([4, 5])
print (x)
が与えられます。[1, 2, 3, [4, 5]]
x = [1, 2, 3]
x.extend([4, 5])
print (x)
は次のようになります。[1, 2, 3, 4, 5]
[1]: https://docs.python.org/3/library/stdtypes.html#mutable-sequence-types
appendはリストに要素を追加し、
extend`は最初のリストと別のリスト(または別のイテレート可能なもの、必ずしもリストではない)を連結します。
>>> li = ['a', 'b', 'mpilgrim', 'z', 'example']
>>> li
['a', 'b', 'mpilgrim', 'z', 'example']
>>> li.append("new")
>>> li
['a', 'b', 'mpilgrim', 'z', 'example', 'new']
>>> li.append(["new", 2])
>>> li
['a', 'b', 'mpilgrim', 'z', 'example', 'new', ['new', 2]]
>>> li.insert(2, "new")
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', ['new', 2]]
>>> li.extend(["two", "elements"])
>>> li
['a', 'b', 'new', 'mpilgrim', 'z', 'example', 'new', ['new', 2], 'two', 'elements']