我有以下代码。
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_ITER
, POP_BLOCK
, 和 LOAD_CONST
。