列表方法append()和extend()之间的差异
1. 定义
list.append(object)
向列表中添加一个对象object
list.extend(sequence)
把一个序列sequence
的内容添加到列表中
从定义上我们很难看出这两个函数的区别。
2. 代码演示
append
:在最后追加对象,把这个对象当做一个整体追加
name = ['py', 'python'] site = ['pythontab', 'pythontab.com'] name.append(site) print (name)
结果
['py', 'python', ['pythontab', 'pythontab.com']]
使用append的时候,是将site看作一个对象,整体打包添加到name对象中。
extend
:通过追加加迭代中的元素来扩展列表,把追加的序列拆开成多个元素加入到列表中
name = ['py', 'python'] site = ['pythontab', 'pythontab.com'] name.extend(site) print (name)
结果
['py', 'python', 'pythontab', 'pythontab.com']
使用extend的时候,是将site看作一个序列,将这个序列和name序列合并,并放在其后面。
注: 以上代码在Python3下测试通过,兼容Python2
3. 结论
这两个函数在list中是很常用的函数, 都是对列表进行添加数据,但它们又有些不同。append侧重整体附加, extend侧重分散扩展。