1、概念
所谓常量折叠,是指在编译过程中搜索和计算常量表达式,而不是在运行过程中计算常量表达式,使运行更加简洁快捷。
2、实例
在 Python 我们可以使用反汇编模块(Disassembler)获取 CPython 为了更好地了解代码执行的过程,字节码。
当使用dis模块反汇编上述常量表达式时,我们将获得以下字节码:
>>>importdis >>>dis.dis("day_sec=24*60*60") 0LOAD_CONST0(86400) 2STORE_NAME(day_sec) 4LOAD_CONST1(None) 6RETURN__VALUE
从字节码可以看出,它只有一个LOAD_CONST ,还有一个已经计算好的值86400。
这表明 CPython 在分析和构建抽象语法树时,解释器会折叠常量表达式 24 * 60 * 用计算值代替60, 86400。
以上是python常量折叠的介绍,希望对大家有所帮助。更多Python学习指导:python基础教程