python中的交换方法(实现)

以下代码如何在python中工作。

a=input()
b=input()
a,b=b,a    #STATEMENT 1
print(a,b)

语句1是在python堆内存空间中创建第三个变量来交换两个数字,还是使用最佳算法进行交换。

评论
{醉相思}
{醉相思}

这是交换值的简单字节码操作。观看此演示:

import dis

code = '''
a = 1
b = 2
a, b = b, a
'''

dis.dis(code)

Output:

 2           0 LOAD_CONST               0 (1)
             2 STORE_NAME               0 (a)

 3           4 LOAD_CONST               1 (2)
             6 STORE_NAME               1 (b)

 4           8 LOAD_NAME                1 (b)
            10 LOAD_NAME                0 (a)
            12 ROT_TWO
            14 STORE_NAME               0 (a)
            16 STORE_NAME               1 (b)
            18 LOAD_CONST               2 (None)
            20 RETURN_VALUE

点赞
评论