python - 这种转置矩阵的方法有什么问题

标签 python list sequences

谁能向我解释为什么使用以下函数转置矩阵是错误的:

def transpose(m):
    for row in range(len(m)):
        for col in range(len(m[0])):
            m[row][col] = m[col][row]
    return m

# example matrix:
m = [[1,2,3], [4,5,6],[7,8,9]]

最佳答案

Python 为此提供了一个名为 zip 的便捷函数。它默认返回元组,因此您需要对结果集执行列表理解以获得列表列表。

def transpose(m):
    return [list(x) for x in zip(*m)]

关于python - 这种转置矩阵的方法有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42989368/

相关文章:

python - 在Tensorflow中实现Theano运算

java - java中的LinkedList的LinkedList?

c# - Linq 是否提供了一种轻松发现序列中间隙的方法?

Django + Postgres : How to specify sequence for a field

Clojure zip 函数

python - 来自网络摄像头的mjpeg流中的OpenCv Python框架为空

python - 获取当前页面加载时间设置 Selenium Python

python - 导入错误:没有名为 'dlib' 的模块

r - 将数据框转换为列表的树形结构列表

python - 如何将列表迭代到元组中