通过eval转换:eval方法虽然没有转换问题,但存在安全性问题,因为eval不仅能解析数据类型还能解析一些恶意输入命令,可能造成不好的影响
user = '{"name" : "john", "gender" : "male", "age": 28}'
user_dict = eval(user)
print(type(user_dict))
通过literal_eval转换:literal_eval只会执行合法的python类型,如果有问题会自动跑出去异常(建议使用)
import ast
user = '{"name" : "john", "gender" : "male", "age": 28}'
user_dict = ast.literal_eval(user)
print(type(user_dict))