gpt4 book ai didi

python - python dis 输出中的 >> 是什么?

转载 作者:行者123 更新时间:2023-11-28 16:57:22 32 4
gpt4 key购买 nike

我有以下代码

code = '''
x = ['a','b','c']
for each in x:
print(each)
'''

我使用了python的dis包的dis函数得到了如下输出

dis.dis(code)

> 2 0 LOAD_CONST 0 ('a')
> 2 LOAD_CONST 1 ('b')
> 4 LOAD_CONST 2 ('c')
> 6 BUILD_LIST 3
> 8 STORE_NAME 0 (x)
>
> 3 10 SETUP_LOOP 20 (to 32)
> 12 LOAD_NAME 0 (x)
> 14 GET_ITER
> >> 16 FOR_ITER 12 (to 30)
> 18 STORE_NAME 1 (each)
>
> 4 20 LOAD_NAME 2 (print)
> 22 LOAD_NAME 1 (each)
> 24 CALL_FUNCTION 1
> 26 POP_TOP
> 28 JUMP_ABSOLUTE 16
> >> 30 POP_BLOCK
> >> 32 LOAD_CONST 3 (None)
> 34 RETURN_VALUE

我想知道 >>> 在此输出中的意义是什么。它正在为 FOR_ITERPOP_BLOCKLOAD_CONST 打印。

最佳答案

如果您查找字节偏移量,您会发现每个标记行都是跳转或其他分支操作的对象。它应该可以帮助您更轻松地识别循环范围等。

关于python - python dis 输出中的 >> 是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57120405/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com