无法将字典的字符串表示形式转换为字典

2024-03-29 02:34:05 发布

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

我有一个包含如下词典的文件:

{'name': 'peter', 'age': '16', 'class': None}
{'name': 'john', 'age': '20', 'class': 'B'}
{'name': 'alex', 'age': '18', 'class': 'C'}

我正在尝试从文件中读取内容,并将行转换回字典。你知道吗

with open(file.txt) as f:
    for line in f:
        if 'name' in line:
            d = json.loads(json.dumps(line.strip()))
            print(type(d))

但是类型仍然是str?我怎样才能使它们再次成为字典对象?你知道吗


Tags: 文件nameinnonejson内容age字典
1条回答
网友
1楼 · 发布于 2024-03-29 02:34:05

它们不是JSON,而是Python字典文本。你知道吗

可以使用^{}将文本转换为python对象。你知道吗

import ast

with open('file.txt') as f:
    for line in f:
        if 'name' in line:
            d = ast.literal_eval(line)
            print(type(d))

相关问题 更多 >