使用python

时间:2018-12-11 16:00:30

标签: python list matrix

我想从序列列表中创建一个矩阵, 一个例子可能是:

list = ['101023', '101011', '102010', '102931']

现在我想获得一个像这样的矩阵:

matrix = [[1, 0, 1, 0, 2, 3], [1, 0, 1, 0, 1, 1], [1, 0, 2, 0, 1, 0], [1, 0, 2, 9, 3, 1]]

对于较大的列表,有没有一种有效的方法?

2 个答案:

答案 0 :(得分:1)

您可以使用列表推导,其中每个元素都是从主列表中的序列字符串构造的整数列表:

Setup.exe /Q ^
          /action=Install ^
          /ERRORREPORTING=1 ^
          /INDICATEPROGRESS=true ^
          /TCPENABLED=1 ^
          /SKIPRULES=PerfMonCounterNotCorruptedCheck ^
          /features="SQLEngine, FullText, SSMS, ADV_SSMS, SNAC_SDK" ^
          /INSTANCENAME=GEMINIS ^
          /INSTALLSQLDATADIR="C:\SQL SERVER 2014" ^
          /INSTANCEDIR="C:\SQL SERVER 2014" ^
          /SQLSVCACCOUNT="NT AUTHORITY\SYSTEM" ^
          /SQLSVCSTARTUPTYPE=Automatic ^
          /AGTSVCACCOUNT="NT AUTHORITY\SYSTEM" ^
          /AGTSVCSTARTUPTYPE=Disabled ^
          /IACCEPTSQLSERVERLICENSETERMS ^
          /ROLE=AllFeatures_WithDefaults ^
          /SECURITYMODE=SQL ^
          /SAPWD="password37" ^
          /SQLCOLLATION="SQL_Latin1_General_CP1_CI_AS" 

答案 1 :(得分:0)

首先,切勿将列表命名为“列表”。 List是python中可以调用的函数。另外,我认为您在处理数组时应该研究numpy。但是,如果您不想这样做,那么这里的一些代码应该可以有效地创建所需的输出。

list1 = ['101023', '101011', '102010', '102931']

list2 = []
for x in list1:
    t=list(x)
    list2.append(t)
print(list2)
[['1', '0', '1', '0', '2', '3'], ['1', '0', '1', '0', '1', '1'], ['1', '0', '2', '0', '1', '0'], ['1', '0', '2', '9', '3', '1']]