智一面的面试题提供python的测试题
使用地址:http://www.gtalent.cn/exam/interview?token=10737428be8e0c037c28caaeb8038b69

Python3 列表list合并的4种方法

 

下面是列表合并的4种方法,其中的代码都在Python3下测试通过,在Python2下运行应该也没问题,时间关系就没测试,遇到问题可以去bbs.pythontab.com留言提问

方法1: 直接使用"+"号合并列表

1
2
3
4
5
6
aList = [1,2,3]
bList = ['www''pythontab.com']
cList = aList + bList
dList = bList + aList
print(cList)
print(dList)

输出为:

1
2
[1, 2, 3, 'www''pythontab.com']
['www''pythontab.com', 1, 2, 3]

方法2: 使用extend方法

1
2
3
4
aList = [1,2,3]
bList = ['www''pythontab.com']
aList.extend(bList)
print(aList)

输出为:

1
[1, 2, 3, 'www''pythontab.com']

注意:使用extend方法会直接修改list数据,extend方法的返回值为None,所以直接打印aList

方法3: 使用切片

1
2
3
4
aList = [1,2,3]
bList = ['www''pythontab.com']
aList[len(aList):len(aList)] = bList
print(aList)

输出:

1
[1, 2, 3, 'www''pythontab.com']

注:len(aList)代表要将bList插入aList中的位置

例如

1
2
3
4
aList = [1,2,3]
bList = ['www''pythontab.com']
aList[1:1= bList
print(aList)

输出为:

1
[1, 'www''pythontab.com', 2, 3]

方法4: 使用append方法

a.append(b)将b看成list一个元素和a合并成一个新的list,它和前面的方法的输出结果不同

实例:

1
2
3
4
aList = [1,2,3]
bList = ['www''pythontab.com']
aList.append(bList)
print(aList)

输出:

1
[1, 2, 3, ['www''pythontab.com']]

它直接把bList当成了一个元素整个放入了aList

总结:

第一种方方法思路比较清晰,就是运算符的重载

第二种方法比较简洁,但会覆盖原始list;

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

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

 

我们的python技术交流群:941108876
智一面的面试题提供python的测试题
使用地址:http://www.gtalent.cn/exam/interview?token=10737428be8e0c037c28caaeb8038b69