下面是[列表]合并的4种方法,其中的代码都在Python3下测试通过,在Python2下运行应该也没问题,时间关系就没测试,遇到问题可以去bbs.pythontab.com留言提问
方法1: 直接使用"+"号合并列表
|
aList ``=
[``1``,``2``,``3``]
bList ``=
[``'www'``, ``'pythontab.com'``]
cList ``=
aList ``+
bList
dList ``=
bList ``+
aList
print``(cList)
print``(dList)
|
输出为:
|
[1, 2, 3, ``'www'``, ``'pythontab.com'``]
[``'www'``, ``'pythontab.com'``, 1, 2, 3]
|
方法2: 使用extend方法
|
aList ``=
[``1``,``2``,``3``]
bList ``=
[``'www'``, ``'pythontab.com'``]
aList.extend(bList)
print``(aList)
|
输出为:
|
[1, 2, 3, ``'www'``, ``'pythontab.com'``]
|
注意:使用extend
方法会直接修改list数据,extend
方法的返回值为None,所以直接打印aList
方法3: 使用切片
|
aList ``=
[``1``,``2``,``3``]
bList ``=
[``'www'``, ``'pythontab.com'``]
aList[``len``(aList):``len``(aList)] ``=
bList
print``(aList)
|
输出:
|
[1, 2, 3, ``'www'``, ``'pythontab.com'``]
|
注:len(aList)代表要将bList插入aList中的位置
例如
|
aList ``=
[``1``,``2``,``3``]
bList ``=
[``'www'``, ``'pythontab.com'``]
aList[``1``:``1``] ``=
bList
print``(aList)
|
输出为:
|
[1, ``'www'``, ``'pythontab.com'``, 2, 3]
|
方法4: 使用append方法
a.append(b)
将b看成list一个元素和a合并成一个新的list,它和前面的方法的输出结果不同
实例:
|
aList ``=
[``1``,``2``,``3``]
bList ``=
[``'www'``, ``'pythontab.com'``]
aList.append(bList)
print``(aList)
|
输出:
|
[1, 2, 3, [``'www'``, ``'pythontab.com'``]]
|
它直接把bList当成了一个元素整个放入了aList
总结:
第一种方方法思路比较清晰,就是运算符的[重载]
第二种方法比较简洁,但会覆盖原始list;
第三种方法功能比较强大,可以将一个列表插入另一个列表的任意位置
第四种方法类似于第二种方法,但是输出的结果不同,如何使用需要看需求而定