python字符串转字典的三种方法

 



1、json
# 问题:转字典的字符串中{}里必须是",不能是'。否则会报错
import json
a = {'name': 'xl', 'age': 12, 'car': {'type': '汽车', 'price': 10}, 'person': {'job': 'programmer', 'age': 3}}
a = json.dumps(a) # 字典转json
a = json.loads(a) # json转字典({}中必须是")

2、eval
# 问题:虽然不存在单双引号的限制,但是不安全。输入 __import__('os').system('dir') user_dict 会列出当前的目录文件!再输入一些删除命令,则可以把整个目录清空了!
a = "{'name': 'xl', 'age': 12, 'car': {'type': '汽车', 'price': 10}, 'person': {'job': 'programmer', 'age': 3}}"
a = eval(a)

3、ast
# 不存在单双引号限制,也不存在安全性问题
import ast
a = "{'name': 'xl', 'age': 12, 'car': {'type': '汽车', 'price': 10}, 'person': {'job': 'programmer', 'age': 3}}"
a = ast.literal_eval(a)

2021-04-25


————————————————
版权声明:本文为CSDN博主「Mr.&」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_45317738/article/details/107003382

上一篇:C语言_结构体变量指针做函数参数的使用案例


下一篇:Spring 是如何造出一个 Bean 的