实例:
>>> a=[1, 2, '3', '1']
>>> a.extend([1,2])
>>> print a
[1, 2, '3', '1', 1, 2]
>>> a.append([1,2])
>>> print a
[1, 2, '3', '1', 1, 2, [1, 2]]
>>> p=[]
>>> p.extend([[1,2],[3,4,5]])
>>> p
[[1, 2], [3, 4, 5]]
lib['grid']=[[(1,2),(3,4)],[(5,6)],[(7,8),(9,10)]]
grid = []
slideIDX = []
for i, g in enumerate(lib['grid']):
grid.extend(g)
slideIDX.extend([i] * len(g))
结果为:
grid
Out[8]: [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
slideIDX
Out[9]: [0, 0, 1, 2, 2]
append和extend都仅只可以接收一个参数,
append 任意,甚至是tuple,append会将参数直接作为一个整体添加进去,不管是list,tuple还是对象。列表可包含任何数据类型的元素,单个列表中的元素无须全为同一类型。
extend 只能是一个列表,列表中可以每个元素是一个整体被添加进去。