繁体   English   中英

如何在 Python 中将文本文件中的行读入二维数组

[英]HOW TO READ LINE FROM A TEXT FILE INTO AN 2D ARRAY IN PYTHON

因此,文本文件如下所示: [[7, 5, 3], [3, 2, 2], [9, 0, 2], [2, 2, 2], [4, 3, 3]]

问题是如何读取该行并使其成为具有 5 行和 3 列的二维数组? 我已经尝试过这段代码,但出现了这个错误“ValueError:无法将大小为 1 的数组重塑为形状 (5,3)”

file = open("test.txt", "r")
allocation = np.array(file.readline())
all = np.reshape(allocation, (5,3))
print(allocation)

file.close()

抱歉,如果之前已经提出过这个问题,但我不太了解其他解决方案。 谢谢你。

一种直接的方法使用eval()函数:

inp = "[[7, 5, 3], [3, 2, 2], [9, 0, 2], [2, 2, 2], [4, 3, 3]]"
arr = eval(inp)
print(arr)  # [[7, 5, 3], [3, 2, 2], [9, 0, 2], [2, 2, 2], [4, 3, 3]]
print(arr[1][1])  # 2

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM