Python:以列表形式读取文件

Python:以列表形式读取文件,python,Python,我已经在文本文件中放置了一个列表。我希望python读取文本文件并将内容作为列表返回。但是,它将内容读取为字符串: data = ast.literal_eval(open('data.txt').read()) # create file, read contents, evaluate 文本文件: ['a','b','c'] Python: ids=[] writtenFile =open('file.txt') readFile=writtenFile.read() ids= rea

我已经在文本文件中放置了一个列表。我希望python读取文本文件并将内容作为列表返回。但是,它将内容读取为字符串:

data = ast.literal_eval(open('data.txt').read()) # create file, read contents, evaluate
文本文件:

['a','b','c']
Python:

ids=[]

writtenFile =open('file.txt')
readFile=writtenFile.read()
ids= readFile
writtenFile.close()
print ids 

返回的['a'、'b'、'c']是字符串,而不是列表或文本。是否有一种方法可以从文本文件中检索['a'、'b'、'c'],然后将其存储在ids字符串中,以便ids是列表['a'、'b'、'c'],而不是字符串?“['a','b','c']”?

使用
ast.literal\u eval
以字符串形式逐字计算文件内容:

data = ast.literal_eval(open('data.txt').read()) # create file, read contents, evaluate

如果您的格式相同,最快的方法就是剥离和拆分:

with open('file.txt') as f:
    print(f.readline().translate(None,"'[]\n").split(","))
    ['a', 'b', 'c']

请确保
导入ast
,以便您可以使用
literal\u eval
我在文本文件中放置了一个列表您为什么要这样做?@njzk2但这有什么问题,他想知道如何从字符串转换为python列表对象。如果您必须知道,我有3个脚本必须使用相同的数千项列表。我希望第一个脚本创建列表,然后保存到其他脚本可以读取的文件中。在python中,有更好的机制将数据保存到文件中<代码>选择就是为了这个。还存在其他跨平台格式,如json。您的方法的问题在于,您依赖于对象的字符串表示,并且希望它实际表示对象。