Python-Notes-1: append VS extend
Posted zsytony
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-Notes-1: append VS extend相关的知识,希望对你有一定的参考价值。
Python-Notes-1: append VS extend
append
VS extend
>>> a = ['a', 'b', 'c']
>>> a.extend(['d', 'e', 'f'])
>>> a
['a', 'b', 'c', 'd', 'e', 'f']
>>> len(a)
6
>>> a[-1]
'f'
>>> a = ['a', 'b', 'c']
>>> a.append(['d', 'e', 'f'])
>>> a
['a', 'b', 'c', ['d', 'e', 'f']]
>>> len(a)
4
>>> a[-1]
['d', 'e', 'f']
- Lists 的两个方法
extend
和append
看起来类似,但实际上完全不同。extend 接受一个参数,这个参数总是一个 list,并且把这个 list 中的每个元素添加到原 list 中。 - 在这里 list 中有 3 个元素
('a'、'b' 和 'c')
,并且使用另一个有 3 个元素('d'、'e' 和 'f')
的list
扩展之,因此新的list
中有 6 个元素。
另一方面,append
接受一个参数,这个参数可以是任何数据类型,并且简单地追加到list
的尾部。在这里使用一个含有 3 个元素的list
参数调用append
方法。 - 原来包含 3 个元素的
list
现在包含 4 个元素。为什么是 4 个元素呢?因为刚刚追加的最后一个元素本身是个list
。List
可以包含任何类型的数据,也包括其他的list
。这或许是您所要的结果,或许不是。如果您的意图是extend
,请不要使用append
。
以上
以上是关于Python-Notes-1: append VS extend的主要内容,如果未能解决你的问题,请参考以下文章
python中的list.append(another_list) vs list.append(another_list[:])? [复制]
c++ std::ostringstream vs std::string::append