2024-04-26 12:11:35 发布
网友
在Python中,连接两个列表的唯一方法是list.extend,它修改第一个列表。是否有任何连接函数返回其结果而不修改其参数?
list.extend
concatenated_list = list_1 + list_2
是的:list1+list2。这给出了一个新列表,它是list1和list2的连接。
list1+list2
list1
list2
根据创建后的使用方式,^{}可能是您的最佳选择:
>>> import itertools >>> a = [1, 2, 3] >>> b = [4, 5, 6] >>> c = itertools.chain(a, b)
这将为组合列表中的项创建生成器,其优点是不需要创建新列表,但您仍然可以使用c,就好像它是两个列表的连接:
c
>>> for i in c: ... print i 1 2 3 4 5 6
如果您的列表很大,并且需要考虑效率,那么这个方法和itertools模块中的其他方法非常方便。
itertools
请注意,此示例耗尽了c中的项,因此在重用之前需要重新初始化它。当然,您可以使用list(c)来创建完整列表,但这将在内存中创建一个新列表。
list(c)
concatenated_list = list_1 + list_2
是的:
list1+list2
。这给出了一个新列表,它是list1
和list2
的连接。根据创建后的使用方式,^{} 可能是您的最佳选择:
这将为组合列表中的项创建生成器,其优点是不需要创建新列表,但您仍然可以使用
c
,就好像它是两个列表的连接:如果您的列表很大,并且需要考虑效率,那么这个方法和
itertools
模块中的其他方法非常方便。请注意,此示例耗尽了
c
中的项,因此在重用之前需要重新初始化它。当然,您可以使用list(c)
来创建完整列表,但这将在内存中创建一个新列表。相关问题 更多 >
编程相关推荐