我发现字符串连接的 python 字节码似乎比列表连接少。
这是一个例子。
测试.py:
a = ''.join(['a', 'b', 'c'])
b = 'a' + 'b' + 'c'
然后我执行python -m dis test.py. 我得到了以下 python 字节码(python 2.7):
1 0 负载常量 0 ('')
3 LOAD_ATTR 0(加入)
6 LOAD_CONST 1 ('a')
9 LOAD_CONST 2 ('b')
12 LOAD_CONST 3 ('c')
15 建造清单 3
18 CALL_FUNCTION 1
21 STORE_NAME 1(一)
3 24 LOAD_CONST 6 ('abc')
27 商店名称 2 (b)
30 LOAD_CONST 4(无)
33 返回值
显然,字符串连接的字节码数量较少。它只是'abc'直接加载字符串。
谁能解释为什么我们总是说列表连接要好得多?
