首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何将写入.txt文件的字典转换为python中的实际字典

如何将写入.txt文件的字典转换为python中的实际字典
EN

Stack Overflow用户
提问于 2022-08-21 16:48:48
回答 2查看 38关注 0票数 0

我有一个.txt文件(test.txt),其中包含一个示例字典

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{"1": "John", "2": "Jeremy", "3": "Jake"}

在python中,我试图从这个文本文件中获取字典,并在我的程序中使用它作为字典,但是变量的类不是字典,而是'str‘类。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
dictionary = open("test.txt", mode="r")
print(dictionary)
print(type(dictionary)

Output:
{"1": "John", "2": "Jeremy", "3": "Jake"}
<class 'str'>

我只想知道如何使这个变量成为字典而不是字符串。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2022-08-21 16:52:40

我要做一些假设。

首先,代码中的dictionary是一个文件,而不是字符串。你忘了read。其次,文件中的数据不是有效的字典。这些名字需要被引用。

假设它们被引用,那么您拥有的就是JSON。使用json.load

内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
{ "1": "John", "2": "Jeremy", "3": "Jake" }

代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import json
dictionary = json.load(open('test.txt'))
票数 1
EN

Stack Overflow用户

发布于 2022-08-21 16:58:32

首先,您不能将此字符串转换为字典,因为它的格式不正确,应该如下所示

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
dictionary = '{"1": "John", "2": "Jeremy", "3": "Jake"}'

注意我是如何在"“之间添加名称的。

对于转换,您将使用json库。

完整法典:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import json

dictionary = open("test.txt", mode="r").read()

conv = json.loads(dictionary)

print(conv)
print(type(conv))

下面是我测试的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import json

str = '{"1": "John", "2": "Jeremy", "3": "Jake"}'

conv = json.loads(str)

print(conv)
print(type(conv))

如果您不修复您的.txt文件,我的可能无法工作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73439259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文