我想知道如何将 python 中的用户输入更改为列表,或者更好的是矩阵,就像使用 int(input) 将其转换为整数一样。
问问题
4161 次
3 回答
4
>>> L = [[1,2,3], [4,5,6], [7,8,9]]
>>> [[x[i] for x in L] for i in range(len(L[0]))]
[[1, 4, 7], [2, 5, 8], [3, 6, 9]]
或者
>>> zip(*L)
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]
或者
>>> import numpy as np
>>> L = np.arange(1, 10).reshape((3, 3))
>>> L
array([[1, 2, 3],
[4, 5, 6],
[7, 8, 9]])
>>> L.transpose()
array([[1, 4, 7],
[2, 5, 8],
[3, 6, 9]])
于 2013-04-24T02:54:51.153 回答
4
array([[1,2,3], [4,5,6], [7,8,9]]).T
如果您使用的是numpy ,它将做您想做的事。
于 2013-04-24T02:58:54.153 回答
0
列表推导应该非常适合该法案。这是一般功能:
def transpose(the_array):
return [[the_array[j][i] for j in range(0, len(the_array[i]))] for i in range(0, len(the_array))]
于 2013-04-24T04:10:42.830 回答