exec语句用来执行储存在字符串或者文件中的python语句。可以生成一个包含python代码的字符串,然后使用exec语句执行这些语句。
>>>exec ‘print "hello word"‘ hello world
exec语句的用法和eval_r(),execfile()是不一样的,exec是一个语句,而eval_r()和execfile()是内建函数。
>>>class FUN:
.....: def __init__(self,mystring):
.....: exec("self." + mystring)
>>>f = FUN("age = 11")
>>>print f.age
eval(str [,globals [,locals ]]) #函数将字符串str当成有效Python表达式来求值,并返回计算结果。例如
>>>eval(‘2*3‘) 6
>>>globals = {‘x‘:7,
.....: ‘y‘:10,
.....: ‘names‘:[‘aa‘,‘bb‘,‘cc‘]
.....: }
>>>locals = {}
>>>a = eval("3*x+4*y",globals,locals)
>>>print a
61
>>>exec("for i in names: print i",globals,locals)
aa
bb
cc
原文:http://blog.csdn.net/magicharvey/article/details/20214563