[英]Create dict from string in Python
在我的Python程序中,我有一个格式的字符串:
'name': 'Salman','age': '25', 'access': 'R', 'id': '00125'
我想将它转换为类型dict,以便我可以查询像dict["name"]
来打印"Salman"
。
使用ast.literal_eval
:
import ast
mystr = "'name': 'Salman','age': '25', 'access': 'R', 'id': '00125'"
d = ast.literal_eval('{'+mystr+'}')
# {'access': 'R', 'age': '25', 'id': '00125', 'name': 'Salman'}
d['access'] # 'R'
我认为这是一个使用理解的简洁解决方案
s = "'name': 'Salman','age': '25', 'access': 'R', 'id': '00125'"
d = dict([i.strip().replace("'", "") for i in kv.split(':')] for kv in s.split(","))
# d == {'access': 'R', 'age': '25', 'id': '00125', 'name': 'Salman'}
首先用“:”和“,”拆分字符串,然后将其存储在列表中。 然后从0迭代到len(列表)-2:mydict [list [i]] = list [i + 1]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.