我的text.txt文件中有数据
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
[[10, 11, 12], [13, 14, 15], [16, 17, 18]]
等等 我想读取文本文件的每一行并将它们视为整数,例如在 3d 空间中绘制这些点。当我通过
导入文件时with open('text.txt') as f:
content = f.readlines()
for x in content:
print(x)
它将其视为:
'[','[','1' etc...
所以我很困惑使用什么作为 split() 函数的分隔符。将不胜感激一些建议。 提前致谢。
最佳答案
您可以使用内置函数eval()解释文件中的 python 列表:
with open('file.txt') as fp:
for line in fp:
pylist = eval(line)
print(pylist)
如果您不能 100% 确定此文件的性质,或者它是否包含其他用户手动生成的数据(如 @G_M 所指出的),您应该使用 ast.literal_eval这只会评估 python 文字:
import ast
with open('file.txt') as fp:
for line in fp:
pylist = ast.literal_eval(line)
print(pylist)
关于python - 如何从文本文件导入(整数)列表的列表并以数学方式处理它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52415373/