Python 如何使用现有列表创建二维阵列?

Python 如何使用现有列表创建二维阵列?,python,arrays,list,2d,Python,Arrays,List,2d,例如,我有一个名为“mazeline”的txt数据,如下所示: abcd cdae korp [[a,b,c,d],[c,d,a,e],[k,o,r,p]] 因此,我首先列出了3个清单: mazeline = readmaze.split() mline0 = list(mazeline[0]) mline1 = list(mazeline[1]) mline2 = list(mazeline[2]) 因此,这3个列表是: mline0 = [a,b,c,d] mline1 = [c

例如,我有一个名为“mazeline”的txt数据,如下所示:

abcd
cdae
korp
[[a,b,c,d],[c,d,a,e],[k,o,r,p]]
因此,我首先列出了3个清单:

mazeline = readmaze.split()
mline0 =  list(mazeline[0])
mline1 =  list(mazeline[1])
mline2 =  list(mazeline[2])
因此,这3个列表是:

mline0 = [a,b,c,d]
mline1 = [c,d,a,e]
mline2 = [k,o,r,p]
我想制作一个二维数组,如下所示:

abcd
cdae
korp
[[a,b,c,d],[c,d,a,e],[k,o,r,p]]
或者有什么方法可以直接从第一个数据生成2d数组


有什么建议吗?任何帮助都很好。

只需将列表放在另一个列表中即可

res = [mline0, mline1, mline2]
更简单地说,您可以跳过中间变量并使用列表

res = [list(mline) for mline in readmaze.split()]

请尝试以下列表:

[[int(i) for i in line.strip()] for line in open('file/path')]

我认为这是我的错误,但结果的类型仍然是一个列表。我不能把它改成数组吗?在python中,实际上不需要像“数组”这样的东西,我们只是使用嵌套列表。(如果你真的需要数组,numpy有一些)谢谢,但我不想要['a','b','c','d',…,'p']]我想要[[a,b,c,d],[c,d,d,a,e],[k,o,r,p]]我该怎么办?文本文件的内容是字符串,所以输出是['a','b','c','d'],…,'p']]来表示“a”,“b',”。。。是字符串。也许您真正想问的是如何将嵌套数组/列表的内容转换为一些Python类型,例如int?@H.Choi,抱歉,不确定您的意思。a,b,c,d必须是某种对象。如果它们不是字符串,它们应该是什么?如果你能描述一下你需要这个做什么,也许会有所帮助。