Python中有几种办法交换两个变量的值?
生活随笔
收集整理的這篇文章主要介紹了
Python中有几种办法交换两个变量的值?
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
交換兩個變量的值方法,這個面試題如果只寫一種當然很簡單,沒什么可以說的。今天這個面試是問大家有幾種辦法來實現交換兩個變量的值 。在沒開始看具體答案前,你可以先想想看 。
下面分別來說說這幾種方法:
1、方法一
通過新添加中間變量temp的方式,這個方法是最簡單的,每個語言都適用。
def swap(a,b):temp = aa = bb = tempprint(a,b)2、方法二
Python獨有的方法,一行代碼就能搞定,直接將兩個變量放到元組中 。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:857662006 尋找有志同道合的小伙伴, 互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' def swap2(a,b):a,b = b,aprint(a,b)3、方法三
這個方法,是不是很少人想到了,采用加減法來交換 。我們不考慮效率,能達到交換的效果就行 。
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:857662006 尋找有志同道合的小伙伴, 互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' def swap3(a, b):a = a + bb = a - ba = a - bprint(a, b)4、方法四
采用異或運算,這個是不是看起來比較高大上。通過按位異或運算來交換兩變量的值,可以減少變量的定義,同時減少計算機對代碼的解析時間。
按位異或運算即計算機會先把十進制數轉化為二進制數,并對二進制數進行從右到左用從1開始編數,然后比較兩個二進制數值相同位置的數,如果相同結果為0,不同時結果為1 。 “1^1=0 1^0=1 0^0=0”
如:
1010
1111
則結果為 0101
def swap4(a,b):a = a ^ bb = a ^ ba = a ^ bprint(a,b)這四種方法,大家是否都已經掌握了?如果對于參考答案有不認同的,大家可以在評論區指出和補充,歡迎留言!
總結
以上是生活随笔為你收集整理的Python中有几种办法交换两个变量的值?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用 ctypes 将 Python 运
- 下一篇: Python中的测试工具