python字符串与列表、字典之间的转换

(列表)和(字典)转字符串,可以使用同一个方法, 如果(字符串)是列表格式,则系统自动转换为列表, 如果是字典格式,则自动转换为字典

 

方法一:通过eval转换:eval方法虽然没有转换问题,但存在安全性问题,因为eval不仅能解析数据类型还能解析一些恶意输入命令,可能造成不好的影响

user = '{"name" : "john", "gender" : "male", "age": 28}'

user_dict = eval(user) print(type(user_dict))

>>>
{"name" : "john", "gender" : "male", "age": 28}

 

方法二:通过literal_eval转换:literal_eval只会执行合法的python类型,如果有问题会自动跑出去异常(建议使用)

import ast
user = "['1', '2']"

user_dict
= ast.literal_eval(user)

print(type(user_dict))

>>>
['1', '2']

 

posted @ 2022-08-28 22:11  博无止境  阅读(173)  评论(0编辑  收藏  举报