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语句会自动为您关闭文件(这就是它的用途)