如何将 .txt 文件转换为列表 python?

How can I convert .txt file into a list python?

在 .txt 文件中:

[['Courtney fan', 'https://www.aaa.com', 'he is a good guy'], ['Courtney fan', 'https://www.bbb.com', 'Dave Butner', 'https://www.ccc.com', 'Austin']]

我试过这个方法,但是分割不正确:

with open("/Users/jj/Desktop/Courtney_fan.txt","r") as f:
       sd = f.read().split() 

如何将其写入 python 中的嵌套列表?

您只需打开文件并阅读即可。 json 应该为您做这件事。 你试过什么?为什么它不起作用?

import json

with open(".txt") as f:
    l = json.load(f)

如果数据是有效的 python 文字(列表、字典等),您可以使用 python 内置 ast 中的 literal_eval 函数包裹。这比使用 eval 的解决方案更好,因为它只会评估有效的数据结构,并且不允许任意代码执行。使用普通 eval 是个好主意的情况几乎为零。

from ast import literal_eval

with open("/Users/jj/Desktop/Courtney_fan.txt","r") as f:
    my_list = literal_eval(f.read())

由于您的 .txt 文件看起来格式正确并且被读入为 string 内置函数 eval() 会为您完成此操作。

这里有一个类似于您在 txt 文件中的字符串的示例:

test = "['a', ['b','c']]"
>>> trial = eval(test)
>>> type(trial)
<class 'list'>
>>> trial
['a', ['b', 'c']]

对你来说它会是:

with open("/Users/jj/Desktop/Courtney_fan.txt") as f:
       sd = f.read()

sd_list = eval(sd)