欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python實(shí)現(xiàn)數(shù)值交換的四種方式

 更新時(shí)間:2025年01月16日 11:21:14   作者:Python熱愛者  
本文介紹了Python中四種實(shí)現(xiàn)數(shù)值交換的方法,包括使用臨時(shí)變量、元組解包、列表和異或運(yùn)算,具有一定的參考價(jià)值,感興趣的可以了解一下

使用臨時(shí)變量

該方法是最簡(jiǎn)單的,也是最容易理解的,適用于所有編程語言,其實(shí)現(xiàn)過程如下:

tmp = a
a = b
b = tmp

使用tuple元組

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

  • 右邊的 b, a 會(huì)構(gòu)成一個(gè)由 b 和 a 組成的元組
  • 對(duì)元組進(jìn)行拆包,然后再分別賦值給到左邊的 a, b
a, b = b, a

我們也可以借助列表,右邊放一個(gè)由 b 和 a 組成的列表來實(shí)現(xiàn),但注意右邊不能放一個(gè)集合中,因?yàn)榧鲜菬o序的,會(huì)導(dǎo)致最終交換結(jié)果不對(duì)。

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

# 右邊為集合,會(huì)導(dǎo)致最終交換數(shù)值不對(duì)
a, b, c, d = {d, c, b, a}
print(a, b, c, d)  # 400 100 3000 200

使用 加減法 或 乘除法

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

# 加減法
a = a + b
b = a - b  # b = (a + b) - b = a
a = a - b  # a = (a + b) - b = (a + b) - a = b 
#學(xué)習(xí)中遇到問題沒人解答?小編創(chuàng)建了一個(gè)Python學(xué)習(xí)交流群:531509025

# 乘除法
a = a * b
b = a // b  # b = (a * b) // b = a
a = a // b  # a = (a * b) // b = (a * b) // a = b 

使用異或運(yùn)算

異或運(yùn)算的特點(diǎn):0異或任一個(gè)數(shù)a,其結(jié)果為 a;任一數(shù)a異或自己,也就是 a異或a,其結(jié)果為 0。同時(shí)異或運(yùn)算滿足 交換律。

使用異或運(yùn)算,也不需要使用到臨時(shí)變量,其實(shí)現(xiàn)過程如下:

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

到此這篇關(guān)于Python實(shí)現(xiàn)數(shù)值交換的四種方式的文章就介紹到這了,更多相關(guān)Python 數(shù)值交換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • Python圖像處理之圖像拼接

    Python圖像處理之圖像拼接

    這篇文章主要介紹了Python圖像處理之圖像拼接,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python圖像處理的小伙伴們有非常好的幫助,需要的朋友可以參考下
    2021-04-04
  • 一文詳解如何在Python中從字符串中提取部分內(nèi)容

    一文詳解如何在Python中從字符串中提取部分內(nèi)容

    這篇文章主要介紹了如何在Python中從字符串中提取部分內(nèi)容的相關(guān)資料,包括使用正則表達(dá)式、Pyparsing庫、AST(抽象語法樹)、字符串操作和函數(shù)式編程,每種方法都有其適用場(chǎng)景和優(yōu)缺點(diǎn),需要的朋友可以參考下
    2025-04-04
  • python編程項(xiàng)目中線上問題排查與解決

    python編程項(xiàng)目中線上問題排查與解決

    因?yàn)闃I(yè)務(wù)上的設(shè)計(jì)存在問題,導(dǎo)致數(shù)據(jù)庫表總是被鎖,而且是不定期的鎖定,導(dǎo)致服務(wù)器運(yùn)行異常,今天就來跟大家說說該如何避免這種問題
    2021-11-11
  • Pyramid添加Middleware的方法實(shí)例

    Pyramid添加Middleware的方法實(shí)例

    在pylons的文檔中,有專門講過如何添加自己的Middleware, 通過這些Middleware, 我們可以改變輸入和輸出。這也是WSGI(Web Server Gateway Interface)的優(yōu)勢(shì)和精髓所在,那么在pyramid中,我們?nèi)绾翁砑覯iddleware呢
    2013-11-11
  • pyecharts實(shí)現(xiàn)數(shù)據(jù)可視化

    pyecharts實(shí)現(xiàn)數(shù)據(jù)可視化

    這篇文章主要介紹了pyecharts實(shí)現(xiàn)數(shù)據(jù)可視化,pyecharts 是百度開源的,適用于數(shù)據(jù)可視化的工具,配置靈活,展示圖表相對(duì)美觀,順滑,下面更多詳細(xì)內(nèi)容,需要的小伙伴可以參考一下
    2022-03-03
  • Python模擬登錄網(wǎng)易云音樂并自動(dòng)簽到

    Python模擬登錄網(wǎng)易云音樂并自動(dòng)簽到

    時(shí)隔三周沒有和大家見過面了,最近在研究python模擬登陸專題,話不多說,讓我們愉快地開始實(shí)現(xiàn)模擬登陸實(shí)現(xiàn)網(wǎng)易云自動(dòng)簽到,需要的朋友可以參考下
    2021-06-06
  • 關(guān)于pytorch求導(dǎo)總結(jié)(torch.autograd)

    關(guān)于pytorch求導(dǎo)總結(jié)(torch.autograd)

    這篇文章主要介紹了關(guān)于pytorch求導(dǎo)總結(jié)(torch.autograd),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Python中的rjust()方法使用詳解

    Python中的rjust()方法使用詳解

    這篇文章主要介紹了Python中的rjust()方法使用詳解,是Python學(xué)習(xí)入門中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • Python進(jìn)行批量剪輯視頻片頭片尾

    Python進(jìn)行批量剪輯視頻片頭片尾

    這篇文章主要為大家詳細(xì)介紹了如何使用Python進(jìn)行批量剪輯視頻片頭片尾功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib繪圖基礎(chǔ)之配置參數(shù)詳解

    Matplotlib?提供了大量配置參數(shù),這些參數(shù)可以但不限于讓我們從整體上調(diào)整通過?Matplotlib?繪制的圖形樣式,下面我們就來看看如何巧妙的運(yùn)用這些參數(shù)吧
    2023-08-08

最新評(píng)論