📅  最后修改于: 2023-12-03 15:18:52.652000             🧑  作者: Mango
在 Python 中,有时会遇到需要按行连接两个列表列表的场景,例如将两个二维数组按行连接起来。本文将介绍如何实现这个功能。
可以使用 zip() 函数 将两个列表列表按行聚合为元组,然后使用列表推导式将元组解包并按行连接起来。
list1 = [[1, 2], [3, 4]]
list2 = [[5, 6], [7, 8]]
result = [row1 + row2 for row1, row2 in zip(list1, list2)]
print(result) # 输出 [[1, 2, 5, 6], [3, 4, 7, 8]]
这里使用了列表推导式 [row1 + row2 for row1, row2 in zip(list1, list2)]
,它表示将每个元组 (row1, row2)
按行连接为一个列表,并将所有这样的列表连接起来。
另一种方法是使用 numpy 库 中的 concatenate() 函数,它可以按指定的轴连接两个数组。
import numpy as np
list1 = np.array([[1, 2], [3, 4]])
list2 = np.array([[5, 6], [7, 8]])
result = np.concatenate((list1, list2), axis=1)
print(result.tolist()) # 输出 [[1, 2, 5, 6], [3, 4, 7, 8]]
这里将两个列表列表转换为了 numpy 数组,并使用 np.concatenate((list1, list2), axis=1)
将它们按行连接起来。最后使用 .tolist()
方法将结果转换回列表列表。
本文介绍了两种按行连接两个列表列表的方法,分别是使用 zip() 函数和列表推导式,以及使用 numpy 库中的 concatenate() 函数。希望本文可以对 Python 语言初学者和开发者有所帮助。