python compile
exec 和eval()都可以执行字符串格式的Python 代码。当执行字符串形式的代码时,每次都必须对这些代码进行字节编译处理。compile()函数提供了一次性字节代码预编译,以后每次调用的时候,都不用编译了。
compile(source, filename, mode[, flags[, dont_inherit]])
参数 | 描述 |
---|---|
source | 要变异的python代码 |
filename | 必须,设为空字符串 |
mode | 有三种含义: |
mode的含义
‘eval’ 可求值的表达式[和eval()一起使用]
‘single’ 单一可执行语句[和exec或eval()一起使用]
‘exec’ 可执行语句组[和exec一起使用]
eval_code = compile('1+1', '', 'eval')
eval(eval_code)single_code = compile('1+1', '', 'single')
eval(single_code)
exec(single_code)exec_code = compile("""
for i in range(4):print(i)
""",'','exec')
exec(exec_code)
参考:
https://cloud.tencent.com/developer/article/1569436
https://cloud.tencent.com/developer/article/1569436
python compile相关推荐
- python compile正则_Python 正则表达式:compile,match
本文以匹配×××ID为例,介绍re模块的compile与match的用法 复杂匹配 = re.compile(正则表达式): 将正则表达式实例化 + re.match(要匹配的字符串): 从字符串开 ...
- python compile函数_python 内置函数 compile()
python 内置函数 compile() 这个函数用来编译一段字符串的源码,结果可以生成字节码或者AST(抽像语法树),字节码可以使用函数exec()来执行,而AST可以使用eval()来继续编译. ...
- python compile正则_Python 正则表达式:compile
本文以匹配×××ID为例,介绍re模块的compile与match的用法 复杂匹配 = re.compile(正则表达式): 将正则表达式实例化 + re.match(要匹配的字符串): 从字符串开 ...
- python里compile的作用_Python代码中compile()函数具有哪些功能呢?
摘要: 下文讲述Python代码中compile()函数的功能说明,如下所示: compile()函数功能说明 compile()函数功能: 用于将一个字符串编译为字节代码 compile()函数语法 ...
- [转载] python内置函数 compile()
参考链接: Python compile() 描述 compile() 函数将一个字符串编译为字节代码. 语法 以下是 compile() 方法的语法: compile(source, filenam ...
- python中compile()_Python compile() 函数
Python compile() 函数 描述 compile() 函数将一个字符串编译为字节代码. 语法 以下是 compile() 方法的语法:compile(source, filename, ...
- Python 内部:可调用对象是如何工作的
[这篇文章所描述的 Python 版本是 3.x,更确切地说,是 CPython 3.3 alpha.] 在 Python 中,可调用对象 (callable) 的概念是十分基本的.当我们说什么东西是 ...
- python打包二进制文件(pyd\dll\exe)
安装环境 pip install cython pip install pyinstaller 单个文件 编写文件compile.py from distutils.core import setup ...
- python解释器详解_浅析Python解释器的设计(一)
一些铺垫(扯淡) 历史上,在Python 2.4以及之前的版本,py代码的执行,也就是从源码到bytecode分为两步: 解析py源码成为分析树 (Parser/pgen.c)基于分析树优化缩减byt ...
最新文章
- 算法设计思想(3)— 迭代法
- day26 re正则表达式
- 飞思卡尔智能车iar工程常见问题
- [openmp]使用嵌套互斥锁锁定变量
- 8年程序员210天没找到工作,小公司老板:降薪5千,爱来不来
- [j2me]手机也可以玩播客(Podcast)! Geek开发说明[开源]
- c# 简单的科学计算
- rfid 标签内存_RFID有源与无源的区别与联系
- ASP.NET Web API 路由 (上)
- Python 实现数据结构中的单链表,循环单链表,双链表
- 快速部署PostgreSQL
- 华为手机asph啥机型_2020年最值得买大品牌手机盘点:华为vivo等五款机型入围
- XXXfragment that is not a fragment错误,fragment认不出来
- 隐藏在计算机网卡怎样删除,卸载电脑中隐藏虚拟网卡设备的解决方法
- Chrome浏览器安装Axure插件
- 解决VS 2017/2019社区版无法登陆的方法
- 老大,不好了,内存泄漏了!
- 安装VMware,出现没有虚拟网络适配器的问题
- 空间句法软件sDNA安装教程及加载到ArcGIS方法
- 区块链服务网络(BSN)技术详解
热门文章
- 9-算法 kmp算法
- linux 查找文件 mysql数据库_Linux下MySQL数据库目录多了好多文件
- JavaScript获取本机浏览器UA助力Python爬取糗事百科首页
- Python使用OpenCV+pillow提取AVI视频中关键帧图像
- Python两种方法求解登楼梯问题(京东2016笔试题)
- Python分离GIF动画成为多帧图像
- centos如何安装数据库mysql
- php redis官方网站,PHP-redis中文文档介绍
- 复试复旦大学计算机博士,【华慧推荐】2018年复旦大学博士面试成功经验分享...
- java中设置按钮随窗口变化_java JLabel 标签内容如何随着窗口的变化而变化