【发布时间】:2021-11-28 04:01:57
【问题描述】:
我的数据有问题,我必须从列表中读取包含数据的文本文件。
with open('ej11.txt') as f:
lines = f.readlines()
为了正确读取文件,我必须消除前两个元素['和后两个']。我尝试过使用“pop”方法,但这样做会消除所有数据。
有什么实用的方法可以解决这个问题吗?谢谢。
我的数据是这样的:
["[[[1, 21, 13, 14, 15, 0.0, 3.0, 'W'], [2, 24, 16, 17, 18, 4.0, 3.0, 'W']], 8, 2]"]
我的数据应该是这样的:
[[[1, 21, 13, 14, 15, 0.0, 3.0, 'W'], [2, 24, 16, 17, 18, 4.0, 3.0, 'W']], 8, 2]
【问题讨论】:
-
首先,
.readlines()在只有一行的文件上是愚蠢的 -.read()会直接给你字符串,而不会将它无用地包含在列表中。ast.literal_eval()将是将该字符串转换为实际 Python 对象的最安全方法。
标签: python python-3.x list