程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python中實現數值的交換方式有哪些

編輯:Python

Python中實現數值的交換方式有哪些

這篇文章主要介紹了Python中實現數值的交換方式有哪些的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Python中實現數值的交換方式有哪些文章都會有所收獲,下面我們一起來看看吧。

1.使用臨時變量

該方法是最簡單的,也是最容易理解的,適用於所有編程語言,其實現過程如下:

tmp = aa = bb = tmp

2.使用tuple元組

該方法是Python下特有的方法,並且只需要一行代碼即可實現,其使用到了元組(tuple),其大致原理如下:

右邊的 b, a 會構成一個由 b 和 a 組成的元組對元組進行拆包,然後再分別賦值給到左邊的 a, b

a, b = b, a

我們也可以借助列表,右邊放一個由 b 和 a 組成的列表來實現,但注意右邊不能放一個集合中,因為集合是無序的,會導致最終交換結果不對。

a, b, c, d = 100, 200, 3000, 400# 右邊為元組# a, b, c, d = d, c, b, a# print(a, b, c, d)  # 400 3000 200 100# 右邊為列表# a, b, c, d = [d, c, b, a]# print(a, b, c, d)  # 400 3000 200 100# 右邊為集合,會導致最終交換數值不對a, b, c, d = {d, c, b, a}print(a, b, c, d)  # 400 100 3000 200

3.使用 加減法 或 乘除法

無論使用 加減法 或 乘除法,都不需要使用到臨時變量,其實現過程如下:

# 加減法a = a + bb = a - b  # b = (a + b) - b = aa = a - b  # a = (a + b) - b = (a + b) - a = b # 乘除法a = a * bb = a // b  # b = (a * b) // b = aa = a // b  # a = (a * b) // b = (a * b) // a = b

4.使用異或運算

異或運算的特點:0異或任一個數a,其結果為 a;任一數a異或自己,也就是 a異或a,其結果為 0。同時異或運算滿足交換律。

使用異或運算,也不需要使用到臨時變量,其實現過程如下:

a = a ^ bb = a ^ b  # b = (a ^ b) ^ b = a ^ (b ^ b) = a ^ 0 = aa = a ^ b  # a = (a ^ b) ^ b = (a ^ b) ^ a = (a ^ a) ^ b = 0 ^ b = b

關於“Python中實現數值的交換方式有哪些”這篇文章的內容就介紹到這裡,感謝各位的閱讀!相信大家對“Python中實現數值的交換方式有哪些”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速雲行業資訊頻道。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved