转自:[绿水青山江湖再见](https://blog.csdn.net/antch620/article/details/80583365)
两种方法
捷径
eval(str)
-
>>> user =
"{'name' : 'jim', 'sex' : 'male', 'age': 18}"
-
>>> type(user)
-
<type
'str'>
-
>>> b=eval(user)
-
>>>
-
>>> b
-
{
'age':
18,
'name':
'jim',
'sex':
'male'}
-
>>> type(b)
-
<type
'dict'>
关于eval()的说法,官方demo解释为:将字符串str当成有效的表达式来求值并返回计算结果。
实际上这是有局限的,例如处理多维字典就不行了
json
另一种专业的转换工具是json
-
>>> user =
'{"name":"jim","sex":"male","age":"18"}'
-
>>> json.loads(user)
-
{
u'age':
u'18',
u'name':
u'jim',
u'sex':
u'male'}
-
>>> type(user)
-
<type
'str'>
-
>>> type(json.loads(user))
-
<type
'dict'>