我的txt文件是这样的:
[[1,3,5],[1,4,4]]
[[1,4,7],[1,4,8],[2,4,5]]
Run Code Online (Sandbox Code Playgroud)
我试图将它转换成一个列表,其中包含 txt 文件中的所有列表。因此,我的示例所需的输出是:
[[[1,3,5],[1,4,4]], [[1,4,7],[1,4,8],[2,4,5]]]
Run Code Online (Sandbox Code Playgroud)
这似乎是一项简单的任务,只是我只能得到这个:
['[[1,3,5],[1,4,4]]', '[[1,4,7],[1,4,8],[2,4,5]]']
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法可以将字符串类型转换为列表?
我使用的代码:
input_list = []
with open("./the_file.txt", 'r') as f:
lines = f.read().split('\n')
for each_line in lines:
input_list.append(each_line)
f.close()
Run Code Online (Sandbox Code Playgroud)
您确实想将文件中的每一行作为实际的 Python 代码进行评估。但是,这样做可能会有问题(例如:如果一行说 会发生什么import os; os.system('rm -rf /'))。
相反,您可以考虑使用ast.literal_eval,它对此类行为有一些保护措施:
with open("./the_file.txt", 'r') as f:
answer = [ast.literal_eval(line.strip()) for line in f]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
733 次 |
| 最近记录: |