Python的“opcode”代表着Python虚拟机中执行的基本操作指令
▥Python
𝄐 0
python常量定义,python常见问题及解决方法,python长度判断,python 常用库,python常量和变量的区别,python常量和变量的概念
Python的“opcode”代表着Python虚拟机中执行的基本操作指令。在不同版本的Python中,这些指令可能会被添加、更改或删除,这就是“Python Changed/Removed Opcodes”的意思。
例如,在Python 3.9版本中,操作码LOAD_METHOD已经被重命名为LOAD_METHOD and CALL_METHOD,并且变成了两个不同的操作码,以支持PEP563中引入的运行时类型注解。同时,Python 3.10版本中删除了一些操作码,如POP_JUMP_IF_FALSE_ABS和POP_JUMP_IF_TRUE_ABS。
以下是几个Python Changed/Removed Opcodes的例子:
1. 在Python 3.6版本中,操作码ROT_THREE被重命名为ROT_THREE_NEW,以便将其与另一个新操作码ROT_THREE_OLD区分开来。
2. 在Python 3.7版本中,操作码BUILD_MAP_UNPACK_WITH_CALL 被添加,以便支持PEP448中介绍的扩展调用语法。
3. 在Python 3.8版本中,操作码BINARY_MATRIX_MULTIPLY被添加,以支持矩阵乘法运算符@的实现。
4. 在Python 3.10版本中,操作码DELETE_DEREF被删除,因为它已经不再需要了,可以使用其他操作码来代替。
总之,Python Changed/Removed Opcodes反映着Python虚拟机的演化历程,也影响着Python代码在不同版本间的可移植性。
Python的“opcode”代表着Python虚拟机中执行的基本操作指令。在不同版本的Python中,这些指令可能会被添加、更改或删除,这就是“Python Changed/Removed Opcodes”的意思。
例如,在Python 3.9版本中,操作码LOAD_METHOD已经被重命名为LOAD_METHOD and CALL_METHOD,并且变成了两个不同的操作码,以支持PEP563中引入的运行时类型注解。同时,Python 3.10版本中删除了一些操作码,如POP_JUMP_IF_FALSE_ABS和POP_JUMP_IF_TRUE_ABS。
以下是几个Python Changed/Removed Opcodes的例子:
1. 在Python 3.6版本中,操作码ROT_THREE被重命名为ROT_THREE_NEW,以便将其与另一个新操作码ROT_THREE_OLD区分开来。
2. 在Python 3.7版本中,操作码BUILD_MAP_UNPACK_WITH_CALL 被添加,以便支持PEP448中介绍的扩展调用语法。
3. 在Python 3.8版本中,操作码BINARY_MATRIX_MULTIPLY被添加,以支持矩阵乘法运算符@的实现。
4. 在Python 3.10版本中,操作码DELETE_DEREF被删除,因为它已经不再需要了,可以使用其他操作码来代替。
总之,Python Changed/Removed Opcodes反映着Python虚拟机的演化历程,也影响着Python代码在不同版本间的可移植性。
本文地址:
/show-274863.html
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。