字典和字符串转换 eval()和str()函数
>>> c="{'origin_name': u'\u7ea2\u91d1\u9f991', 'material_code': u'5678567', 'id': 13}"
>>>c
"{'origin_name': u'\u7ea2\u91d1\u9f991', 'material_code': u'5678567', 'id': 13}"
>>> d=eval(c)
>>> d
{'origin_name': u'\u7ea2\u91d1\u9f991', 'material_code': u'5678567', 'id': 13}
>>>e=str(d)
>>>e
"{'origin_name': u'\u7ea2\u91d1\u9f991', 'material_code': u'5678567', 'id': 13}"
exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行 这些语句。下面是一个简单的例子。
>>> exec 'print "Hello World"'
Hello World
eval语句用来计算存储在字符串中的有效Python表达式。下面是一个简单的例子。
>>> eval('2*3')
有时候编码问题,需要
tagname = eval(tagname.decode("utf8")),或者
tagname = eval(tagname.replace("\r\n","").decode("utf8"))
现在有最好的办法:用json
将字符串转化成字典dict类型?这个可以用python的标准库simplejson 转换为JSON格式。
JSON到字典转化:
dictinfo = simplejson.loads(json_str) 输出dict类型
字典到JSON转化:
jsoninfo = simplejson.dumps(dict)输出str类型
比如:
info = {'name' : 'jay', 'sex' : 'male', 'age': 22}
jsoninfo = simplejson.dumps(info)
print jsoninfo
print type(jsoninfo)
阅读(1717) | 评论(0) | 转发(0) |