Python3中列表list合并的四种方法

yipeiwu_com6年前Python基础

下面是[列表]合并的4种方法,其中的代码都在Python3下测试通过,在Python2下运行应该也没问题,时间关系就没测试,有任何问题欢迎给我留言。

方法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;

第三种方法功能比较强大,可以将一个列表插入另一个列表的任意位置

第四种方法类似于第二种方法,但是输出的结果不同,如何使用需要看需求而定

以上所述是小编给大家介绍的Python3中列表list合并的四种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

导入tensorflow:ImportError: libcublas.so.9.0 报错

导入tensorflow:ImportError: libcublas.so.9.0 报错

错误:ImportError: libcublas.so.9.0: cannot open shared object file: No such file or directory...

使用OpCode绕过Python沙箱的方法详解

0x01 OpCode opcode又称为操作码,是将python源代码进行编译之后的结果,python虚拟机无法直接执行human-readable的源代码,因此python编译器第...

详解Python编程中对Monkey Patch猴子补丁开发方式的运用

Monkey patch就是在运行时对已有的代码进行修改,达到hot patch的目的。Eventlet中大量使用了该技巧,以替换标准库中的组件,比如socket。首先来看一下最简单的m...

tensorflow tf.train.batch之数据批量读取方式

在进行大量数据训练神经网络的时候,可能需要批量读取数据。于是参考了这篇文章的代码,结果发现数据一直批量循环输出,不会在数据的末尾自动停止。 然后发现这篇博文说slice_input_pr...

星球大战与Python之间的那些事

星球大战与Python之间的那些事

Python与星球大战背后的工业光魔 提起Python语言,很多人会想起系统运维、Web开发等工作。很少有人会知道Python也能够用于电影视觉特效的制作,其中就包括了《星球大战》某些电...