Python常用的四種數值交換方式!
近期,有一個同學在面試Python工程師的時候,面試官問了這樣一個問題:你能用幾種方法來實現交換兩個變數的值?在沒有看文章之前,各位小夥伴知道幾種方法呢?小編為大家整理了四種數值交換方式,下面我們一起來看看吧。
方法1、透過新新增中間變數temp的方式,這個方式是最簡單的,每個語言都適用。
def swap(a,b):
temp=a
a=b
b=temp
print(a,b)
方法2、Python獨有的方法,一行程式碼就能搞定,直接將兩個元素放到元組。
def swap2(a,b):
a,b=b,a
print(a,b)
方法3、這個方法採用加減法來交換。不考慮效率,能達到交換的效果就行
def swap3(a,b):
a=a+b
b=a-b
a=a-b
print(a,b)
方法4、採用異或運算,這個是不是看起來比較高大上。透過按位異或運算來交換兩個變數的值,可以減少變數的定義。
按位異或運算即計算機會把十進位制數轉化為二進位制數,並對二進位制數進行從右到左從1開始編數,然後比較兩個二進位制數值相同位置的數,如果相同結果為0,不同時結果為1。
“1^1=01^0=10^0=0°
如:10101111
則結果為0101
def swap4(a,b):
a=a^b
b=a^b
a=a^b
print(a,b)
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2913946/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 數值變數交換常用方法變數
- 使用位運算、值交換等方式反轉java字串-共四種方法Java字串
- SFP+光模組與交換機四種搭配使用方式
- 三種交換變數的方法變數
- 異或交換兩個數的值
- Swift交換兩個變數的值Swift變數
- C語言交換兩個變數的值的5種基本方法C語言變數
- 不用第三個變數,交換變數的值變數
- Python面試技巧-交換兩個元素的值Python面試
- python字典的四種遍歷方式Python
- C++ 一種交換兩個數的思路C++
- 不使用臨時變數交換兩個變數的值變數
- JMeter四種引數化方式JMeter
- 用最少的程式碼模擬gRPC四種訊息交換模式RPC模式
- 如何不使用臨時變數,交換兩個變數的值。變數
- 從JVM底層原理分析數值交換那些事JVM
- Spring Boot下Profile的四種切換方式思路總結Spring Boot
- Java交換map的key和value值Java
- Python常用的資料儲存方式有哪些?五種!Python
- OAuth 2.0 的四種方式OAuth
- Linux下配置網路引數常用的兩種方式!Linux
- mysql交換兩行或兩列的值MySql
- 變更性別--使用if 交換值
- Java 常用的 4 種加密方式Java加密
- Vue的七種傳值方式Vue
- python-資料交換Python
- java基礎變數的交換Java變數
- Python教程:Pandas資料轉換編碼的10種方式Python
- map的四種遍歷方式
- Java 建立類的四種方式Java
- hashMap的四種遍歷方式HashMap
- Spark的四種部署方式概括Spark
- 異或運算的巧用 → 不用額外的變數,如何交換兩個變數的值?變數
- 交換兩個資料的三種方法
- 交換兩個變數變數
- 數倉的兩種輕量級資料交換格式:json與jsonbJSON
- Python保留兩位小數五種常用的方法!Python
- 淺談Python變數賦值的三種方法!Python變數賦值