Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何读取包含列表的文本文件并将这些列表添加到列表中?_Python_List_Text Files - Fatal编程技术网

Python 如何读取包含列表的文本文件并将这些列表添加到列表中?

Python 如何读取包含列表的文本文件并将这些列表添加到列表中?,python,list,text-files,Python,List,Text Files,我在一个程序中工作,该程序保存一些产品,并根据它们的价格将其排列成文本文件。 生成的文本文件如下所示 ['Kingstom', 0.92, 'china'] ['sony', 16.88, 'USA'] 但我需要加入一个“加载”选项,在这个选项中,用户上传文本文件以添加更多产品,并生成另一个文本文件,其中包含排列好的数据 我用过 data = [line.strip() for line in open('test.txt', 'r')] 但它给了我这个 ["['Kingstom', 0.9

我在一个程序中工作,该程序保存一些产品,并根据它们的价格将其排列成文本文件。 生成的文本文件如下所示

['Kingstom', 0.92, 'china']
['sony', 16.88, 'USA']
但我需要加入一个“加载”选项,在这个选项中,用户上传文本文件以添加更多产品,并生成另一个文本文件,其中包含排列好的数据

我用过

data = [line.strip() for line in open('test.txt', 'r')]
但它给了我这个

["['Kingstom', 0.92, 'china']", "['sony', 16.88, 'USA']"]
但我需要这样一个列表,以便更好地管理数据

[['Kingstom', 0,92, 'china'], ['Sony', 16.88, 'USA']]

所以数据[0]应该是['Kingstom',0,92,'china',等等。

这听起来像是ast.literal\u eval的工作

import ast
[ast.literal_eval(x) for x in open("test.txt")]

不过,更好的解决方案可能是以更常见的格式(即csv、json、xml等)保存数据,并使用适用的解码器。literal_eval是最好的选择。我不会使用方括号将其保存在文件中,而只是使用逗号分隔的值,就像在csv中一样。您可以更改文件的格式吗?如果可能,您应该使用
json
格式。