Python 对于二维数组,将字符串拆分为多个整数

Python 对于二维数组,将字符串拆分为多个整数,python,for-loop,multidimensional-array,Python,For Loop,Multidimensional Array,因此,我有一个文本文件,其内容如下: 1, 2, 3, 4, 5 2, 3, 4, 5, 6 3, 4, 5, 6, 7 4, 5, 6, 7, 8 ... 我想将这个文件读入python中的2D数组,这样matrix[]array将保存包含每行整数的数组 例如,矩阵[2][3]==6 我不确定我的逻辑或编程在这方面是否正确(我是python新手),但到目前为止,我掌握的是: matrix = [] i = 0 with open('matrix.txt', 'r') as open

因此,我有一个文本文件,其内容如下:

1, 2, 3, 4, 5

2, 3, 4, 5, 6

3, 4, 5, 6, 7

4, 5, 6, 7, 8

...
我想将这个文件读入python中的2D数组,这样
matrix[]
array将保存包含每行整数的数组

例如,
矩阵[2][3]==6

我不确定我的逻辑或编程在这方面是否正确(我是python新手),但到目前为止,我掌握的是:

matrix = []

i = 0
with open('matrix.txt', 'r') as openfile:
    for line in openfile:
        matrix.append([])
        matrix[i] = int(n) for n in line.split(',')
        i += 1

openfile.close()

print (matrix)
#print (matrix[2][3])
我得到一个无效的语法错误,覆盖嵌套的
for
语句,如
int(n)for n

必须用方括号括起来
[…]

matrix[i] = [int(n) for n in line.split(',')]
#           ^                               ^
此外,没有理由执行
openfile.close()
,因为with语句在控件离开其代码块(这就是它的作用)时自动为您关闭文件。

必须用方括号括起来
[…]

matrix[i] = [int(n) for n in line.split(',')]
#           ^                               ^
另外,没有理由执行
openfile.close()
,因为当控件离开其代码块时,with语句会自动为您关闭文件(这就是它的用途)