从文本文件以列表形式导入数据

2024-04-20 08:54:31 发布

您现在位置:Python中文网/ 问答频道 /正文

这似乎是一个简单的问题,但我已经在网上找了,找不到任何东西,所以我们走吧。。。你知道吗

我有一个包含以下信息的文本文件:

[['AX34 GFV','Name: John Smith1, Address: x, Number: x'],['AX34 ABC','Name: John Smith2, Address: x, Number: x'],['UH23 HUH','Name: John Smith3, Address: x, Number: x'],['ER54 SDR','Name: John Smith4, Address: x, Number: x'],['FE54 VMR','Name: John Smith5, Address: x, Number: x'],['23FX SDA','Name: John Smith6, Address: x, Number: x'],['AS23 JAS','Name: John Smith7, Address: x, Number: x']]    

我只想读取这些数据,然后将其作为列表而不是字符串导入。现在,这就是我所拥有的。。。你知道吗

details = open("details.txt","r")
details = details.read()
details = list(details)
print(details)

但这需要数据的每个字母,并将其作为一个列表…有什么简单的函数来解决这个问题吗?你知道吗


Tags: 数据name信息number列表addressdetailsjohn
3条回答
>>> import ast
>>> x = "[['AX34 GFV','Name: John Smith1, Address: x, Number: x'],['AX34 ABC','Name: John Smith2, Address: x, Number: x'],['UH23 HUH','Name: John Smith3, Address: x, Number: x'],['ER54 SDR','Name: John Smith4, Address: x, Number: x'],['FE54 VMR','Name: John Smith5, Address: x, Number: x'],['23FX SDA','Name: John Smith6, Address: x, Number: x'],['AS23 JAS','Name: John Smith7, Address: x, Number: x']]  "
>>> ast.literal_eval(x)
[['AX34 GFV', 'Name: John Smith1, Address: x, Number: x'], ['AX34 ABC', 'Name: John Smith2, Address: x, Number: x'], ['UH23 HUH', 'Name: John Smith3, Address: x, Number: x'], ['ER54 SDR', 'Name: John Smith4, Address: x, Number: x'], ['FE54 VMR', 'Name: John Smith5, Address: x, Number: x'], ['23FX SDA', 'Name: John Smith6, Address: x, Number: x'], ['AS23 JAS', 'Name: John Smith7, Address: x, Number: x']]

ast.literal_eval

Safely evaluate an expression node or a Unicode or Latin-1 encoded string containing a Python expression. The string or node provided may only consist of the following Python literal structures: strings, numbers, tuples, lists, dicts, booleans, and None.

也许你想要这个:

list = []
details = open("details.txt", "r")
line = details.readline()
while(line != ''):
    list.append(line)
    line = details.readline()

print(list)
details.close()

我不太确定这是否真的只是一条线或单独的线。你知道吗

但是试试看。append()

相关问题 更多 >