Python可执行对象——exec、eval、compile
来源:互联网 发布:手机制作结婚照软件 编辑:程序博客网 时间:2024/04/30 13:09
http://www.pythoner.com/56.html
这篇文章将对Python提供的调用可执行对象的内建函数进行说明,涉及exec、eval、compile三个函数。exec语句用来执行存储在代码对象、字符串、文件中的Python语句,eval语句用来计算存储在代码对象或字符串中的有效的Python表达式,而compile语句则提供了字节编码的预编译。
当然,需要注意的是,使用exec和eval一定要注意安全性问题,尤其是网络环境中,可能给予他人执行非法语句的机会。
1.exec
格式:exec obj
obj对象可以是字符串(如单一语句、语句块),文件对象,也可以是已经由compile预编译过的代码对象。
下面是相应的例子:
代码对象的例子放在第3部分一起讲解。
2.eval
格式:eval( obj[, globals=globals(), locals=locals()] )
obj可以是字符串对象或者已经由compile编译过的代码对象。globals和locals是可选的,分别代表了全局和局部名称空间中的对象,其中globals必须是字典,而locals是任意的映射对象。
下面仍然举例说明:
3.compile
格式:compile( str, file, type )
compile语句是从type类型(包括’eval': 配合eval使用,’single': 配合单一语句的exec使用,’exec': 配合多语句的exec使用)中将str里面的语句创建成代码对象。file是代码存放的地方,通常为”。
compile语句的目的是提供一次性的字节码编译,就不用在以后的每次调用中重新进行编译了。
还需要注意的是,这里的compile和正则表达式中使用的compile并不相同,尽管用途一样。
下面是相应的举例说明:
- Python可执行对象——exec、eval、compile
- Python可执行对象——exec、eval、compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- python中eval, exec, execfile,和compile
- Python exec eval execfile compile 学习
- python中eval, exec, execfile,和compile
- python:exec eval execfile compile介绍
- python:exec eval execfile compile介绍
- python:exec eval execfile compile介绍
- python中eval, exec, execfile,和compile
- Python中的eval(),exec,execfile(),compile()
- 加入购物车功能实现
- SVG画圆形进度条
- 第十五周oj刷题——Problem H: C++ 习题 输出日期时间--友元类
- PAM模块
- 第16周上机实践项目3——max带来的冲突
- Python可执行对象——exec、eval、compile
- 与C++输入输出有关的类和对象
- java 从zip包中复制文件
- mysql -u root -p 等这些常用的参数
- 【麦可网】Cocos2d-X跨平台游戏开发学习笔记---第十四课:Cocos2D-X UI系统1-4
- Ubuntu14.04 lua游戏引擎Love安装
- Struts2 几个重要配置摘要
- 关于事务
- u盘启动工具