#两个列表合并
# 方法一:直接相加
l1 = [1,2,3]
l2 = [4,5,6]
# l3 = l1+l2
# print(l3) # [1, 2, 3, 4, 5, 6]
# 方法二:extend:无返回值,会直接改变原列表,使用 extend 可实现列表的自我扩展。
l3 = l1.extend(l2)
print(l1) # [1, 2, 3, 4, 5, 6]
print(l3) # None
l1.append(l2)
print(l1) # [1, 2, 3, [4, 5, 6]]
# 方法三,使用*解包:
l3 = [*l1, *l2]
print(l3) # [1, 2, 3, 4, 5, 6]
# 方法四:使用列表推导式
l3 = [x for i in (l1,l2) for x in i]
print(l3) # [1, 2, 3, 4, 5, 6]
# 方法五:使用 heapq,,heapq 是 Python 的一个标准模块,它提供了堆排序算法的实现。heapq.merge 除了合并多个列表外,它还会将合并后的最终的列表进行排序。采用堆排序,效率非常高。
list01 = [2,5,3]
list02 = [1,4,6]
list03 = [7,9,8]
from heapq import merge
l = list(merge(list01, list02, list03))
print(l)