0

我想知道如何将 python 中的用户输入更改为列表,或者更好的是矩阵,就像使用 int(input) 将其转换为整数一样。

4

3 回答 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 回答