python交換兩個變數的方法

2021-09-05 11:18:38 字數 735 閱讀 8411

方法一:利用臨時變數(最基礎的用法,也是怎麼用都不容易出錯的方法)

temp = a

a = b

b = temp

方法二:python特有的,這種複製操作的原理等會再說。

a,b = b,a
方法三:通過簡單的邏輯運算實現互換操作

a = a + b

b = a - b

a = a - b

方法四:通過異或運算(很巧妙)

a = a^b  

b = a^b # b = (a^b)^b = a

a = a^b # a = (a^b)^a = b

現在來說說方法二中的賦值操作:

看例子:

a =

0b =

1a,b = b,a+b

print

(a,b)

# 1 1

也就是說,賦值運算是先計算等號右邊的b和a+b,再分別賦給等號左邊的a和b,它和下面這種分兩行的寫法得到的結果是不同的!所以一定要注意! 劍指offer 面試題3那個題就是這樣的。

a =

0b =

1a = b

b = a+b

print

(a,b)

# 1 2

交換兩個變數方法

將兩個變數的值互換,相當簡單的問題。假設有變數a b int a int b 方法1 將a b的值互換,為 int tmp a a b b tmp 然而,如果要求不用中間變數,就交換變數的值,該怎麼做呢?乙個比較有效率且眾所周知的方法就是 方法2 三次異或操作 int a 10,b 12 a 101...

交換兩個變數的方法

例如交換兩個 int 變數 a,b int a,b int temp 建立臨時變數 temp a a b b temp int a 9 int b 6 a a b 執行後a 15 b a b b 15 6 9 a a b a 15 9 6 執行完後a 6,b 9 該方法的不足是,當a,b 值很大時,...

交換兩個變數

目的 實現兩個變數值的交換 以int 型別為例 方法一 使用臨時變數。優點 安全,適合任何型別資料交換,無溢位風險。缺點 保守 效率不高,需要使用第三方臨時變數 棧空間 1 void swap value int var1,int var2 2 方法二 利用 算術運算實現。優點 不需要額外的臨時變數...