全部博文(921)
分类: Python/Ruby
2011-02-24 14:37:20
以前一直没有遇到过dict和string的转换,直到遇到了,才想起来查,原来也是很方便的。
特别是如果你定义了一个比较复杂的数据结构,当然用dict最适合不过了,但是你要把它写到文件里,自然就成了string类型,下次读取文件,取出的数据结构自然也是stirng,如何转换为dict呢?
用eval_r()方法:
>>> a = "{'Beijing':'010','Guangzhou':'020','Shanghai':'021'}"
>>> type(a)
>>> b = eval_r(a)
>>> b
{'Beijing': '010', 'Guangzhou': '020', 'Shanghai': '021'}
>>> type(b)
>>> for key in b.keys():
... print key,":",b[key]
...
Beijing : 010
Guangzhou : 020
Shanghai : 021
>>>
exec语句用来执行储存在字符串或文件中的Python语句。例如,我们可以在运行时生成一个包含Python代码的字符串,然后使用exec语句执行这些语句。下面是一个简单的例子。
>>> exec 'print "Hello World"'
Hello World
eval语句用来计算存储在字符串中的有效Python表达式。下面是一个简单的例子。
>>> eval_r('2*3')
6