use*_*499 0 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
...
Run Code Online (Sandbox Code Playgroud)
我想将此文件读入python中的2D数组中,以便该matrix[]
数组将保存包含每行整数的数组。
例如, matrix[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])
Run Code Online (Sandbox Code Playgroud)
我收到覆盖嵌套for
语句的无效语法错误,如下所示int (n) for n
列表理解必须放在方括号中[...]
:
matrix[i] = [int(n) for n in line.split(',')]
# ^ ^
Run Code Online (Sandbox Code Playgroud)
同样,也没有理由这样做,openfile.close()
因为当控件离开其代码块时(即它的作用),with语句会自动为您关闭文件。