1 >>> li = [\'a\', \'b\', \'c\'] 2 >>> li.extend([\'d\', \'e\', \'f\']) 3 >>> li 4 [\'a\', \'b\', \'c\', \'d\', \'e\', \'f\'] 5 >>> len(li) 6 6 7 >>> li[-1] 8 \'f\' 9 >>> li = [\'a\', \'b\', \'c\'] 10 >>> li.append([\'d\', \'e\', \'f\']) 11 >>> li 12 [\'a\', \'b\', \'c\', [\'d\', \'e\', \'f\']] 13 >>> len(li) 14 4 15 >>> li[-1] 16 [\'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。