如何使用zip函数在Python中进行矩阵转置

2023-03-31 00:00:00 函数 如何使用 矩阵

在Python中使用zip()函数可以很方便地进行矩阵转置操作。具体来说,可以将矩阵的每一列作为一个可迭代对象,然后使用zip()函数将它们合并成一个元组的列表,即可得到矩阵的转置。下面是一个示例:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]

transposed = list(zip(*matrix))

print(transposed)
# Output: [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

在以上示例中,matrix将矩阵的每一行作为一个参数传递给zip()函数,因此zip(matrix)实际上是将矩阵的每一列作为一个可迭代对象传递给zip()函数,然后将它们合并成一个元组的列表。最后,使用list()函数将元组的列表转换为一个列表,即可得到矩阵的转置。

如果需要使用字符串,可以将上述示例中的整数替换为字符串,例如:

matrix = [
    ['p', 'i', 'd'],
    ['a', 'n', 'c'],
    ['o', 'd', 'e'],
    ['.', 'c', 'o', 'm']
]

transposed = list(zip(*matrix))

print(transposed)
# Output: [('p', 'a', 'o', '.'), ('i', 'n', 'd', 'c'), ('d', 'c', 'e', 'o')]

在以上示例中,矩阵中的每一个元素都被替换为了单个字符的字符串。

相关文章