Python内置函数——exec

黄舟
发布: 2017-01-19 16:37:23
原创
1732 人浏览过

Python内置函数——exec

xecexec(object[, globals[, locals]])
登录后复制

本函数是执行一段语句或函数。
参数object是一个字符串的语句或者一个编译过的语句的对象名称。
参数globals是全局命名空间,用来指定执行语句时可以访问的全局命名空间;
参数locals是局部命名空间,用来指定执行语句时可以访问的局部作用域的命名空间。
要注意本函数不会返回任何值,不管函数或语句有任何的返回值语句,比return或yield语句。
如果参数globals和locals忽略,就会使用调用时所处的命名空间。
这两个参数都要求是字典形式来说明命名空间。
在前面已经学习compile、eval等函数,那么它们之间有什么区别呢?
可以简单地认为它们的区别如下:

compile函数是只编译字符串代码,而不作任何的执行,但它可以编译表达式或语句。
eval函数是**只执行表达式字符串代码,而不执行语句代码。**
x = eval('%d + 6' % x)
exec函数是**只执行语句代码,而不执行表达式代码**,因为它没有任何返回值。
exec('if True: print(6)')
>>> exec('if True: print 100')
100
>>> exec('''
x = 200
if x>100:
    print x+200
''')
400
登录后复制

以上就是Python内置函数——exec的内容,更多相关内容请关注PHP中文网(www.php.cn)!


来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!