在Python内置特殊函数eval(),exec,execfile()名字空间
提问人:杨紫红发布时间:2020-11-17
默认eval(),exec,execfile()所运行的代码都位于当前的名字空间中。eval(), exec,和 execfile()函数也可接受
一个或两个可选字典参数作为代码执行的全局名字空间和局部名字空间
Demo:
globals = {'x': 7, 'y': 10, 'birds': ['Parrot', 'Swallow', 'Albatross'] }
locals = { } # 将上边的字典作为全局和局部名称空间
a = eval("3*x + 4*y", globals, locals)
exec "for b in birds: print b" in globals, locals
注意语法 execfile("foo.py", globals, locals)
exec是一个语句(就象print或while),
而eval()和execfile()则是内建函数.
继续查找其他问题的答案?
相关视频回答
回复(0)
点击加载更多评论>>