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

Python連續(xù)賦值需要注意的一些問(wèn)題

 更新時(shí)間:2021年06月03日 10:50:37   作者:木子天一  
這篇文章主要介紹了Python連續(xù)賦值需要注意的一些問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Python連續(xù)賦值的注意事項(xiàng)

在python中是可以使用連續(xù)賦值的方式來(lái)一次為多個(gè)變量進(jìn)行賦值的,比如:

a = b = c = 1
a, b, c = 1, 1, 1

這些都可以完成變量的賦值,但是就有一個(gè)問(wèn)題了,比如:

a = 3
a, b = 1, a

如果按照正常的思維邏輯,先進(jìn)行a = 1,在進(jìn)行b = a,最后b應(yīng)該等于1,但是這里b應(yīng)該等于3,因?yàn)樵谶B續(xù)賦值語(yǔ)句中等式右邊其實(shí)都是局部變量,而不是真正的變量值本身,比如,上面例子中右邊的a,在python解析的時(shí)候,只是把變量a的指向的變量3賦給b,而不是a=1之后a的結(jié)果,這一點(diǎn)剛開(kāi)始學(xué)python的人可能容易誤解,再舉一個(gè)Leetcode里鏈表的例子理解就更深了。

假如要對(duì)一個(gè)鏈表進(jìn)行翻轉(zhuǎn),就比如把1—>2->3->4轉(zhuǎn)化為4->3->2->1

對(duì)于這個(gè)問(wèn)題很簡(jiǎn)單,只要反轉(zhuǎn)指針就可以了,假如鏈表結(jié)構(gòu)為:

class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None

我們可以用很簡(jiǎn)單的三行代碼完成這個(gè)過(guò)程:

def reverseList(self, head):
        L = ListNode(float("-inf"))
        while head:
            L.next, head.next, head = head, L.next, head.next
        return L.next

這里的L是指向一個(gè)新建的結(jié)點(diǎn),因?yàn)閜ython沒(méi)有指針的概念,所以用一個(gè)額外的結(jié)點(diǎn)來(lái)代替頭指針,這里的核心代碼就是中間那一行三個(gè)變量的連續(xù)賦值,如果單獨(dú)一句句來(lái)理解的話,最后肯定是想不通的,在這里,假設(shè)head結(jié)點(diǎn)是鏈表串'1->2->3->4'的頭結(jié)點(diǎn),先用新的L結(jié)點(diǎn)的next指針指向head的第一個(gè)結(jié)點(diǎn)‘1',之后將L.next(第一次也就是空)賦給了head的next指針,之后再把head的next指針(注意,這里的next指針還是指向‘2'的,而不是空)賦給head,相當(dāng)于next向前移一位,這一步相當(dāng)于一個(gè)串變成了兩個(gè):

L:‘-inf'->‘1'
head:‘2'->‘3'->‘4'->‘5'

Python花樣賦值方法總結(jié)

#連等賦值
a=b=c=1
#拆包賦值
a,b=1,2
#用_占位和*代表不確定個(gè)參數(shù)進(jìn)行拆包賦值
a=range(10)
_,b,c,*d=a
#迭代賦值
a=(1,2)
b=[(i,j)for i in a for j in a]
#交換
a,b=b,a

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python圖片存儲(chǔ)和訪問(wèn)的三種方式詳解

    Python圖片存儲(chǔ)和訪問(wèn)的三種方式詳解

    在?Python?中處理圖像數(shù)據(jù)的時(shí)候,例如應(yīng)用卷積神經(jīng)網(wǎng)絡(luò)等算法可以處理大量圖像數(shù)據(jù)集,這里就需要學(xué)習(xí)如何用最簡(jiǎn)單的方式存儲(chǔ)、讀取數(shù)據(jù)。本文介紹了Python中圖片存儲(chǔ)和訪問(wèn)的三種方式,需要的可以參考一下
    2022-04-04
  • pandas求兩個(gè)表格不相交的集合方法

    pandas求兩個(gè)表格不相交的集合方法

    今天小編就為大家分享一篇pandas求兩個(gè)表格不相交的集合方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • python 文本單詞提取和詞頻統(tǒng)計(jì)的實(shí)例

    python 文本單詞提取和詞頻統(tǒng)計(jì)的實(shí)例

    今天小編就為大家分享一篇python 文本單詞提取和詞頻統(tǒng)計(jì)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • Python matplotlib安裝和使用的完整教程

    Python matplotlib安裝和使用的完整教程

    Python Matplotlib是一個(gè)強(qiáng)大的數(shù)據(jù)可視化庫(kù),它允許用戶創(chuàng)建各種類型的靜態(tài)、動(dòng)態(tài)圖表和圖形,Matplotlib基于NumPy和Pandas等科學(xué)計(jì)算庫(kù),提供了豐富的繪圖選項(xiàng),本文介紹了Python matplotlib安裝和使用的完整教程,需要的朋友可以參考下
    2024-07-07
  • 詳解Python list和numpy array的存儲(chǔ)和讀取方法

    詳解Python list和numpy array的存儲(chǔ)和讀取方法

    這篇文章主要介紹了詳解Python list和numpy array的存儲(chǔ)和讀取方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • python 如何使用find和find_all爬蟲(chóng)、找文本的實(shí)現(xiàn)

    python 如何使用find和find_all爬蟲(chóng)、找文本的實(shí)現(xiàn)

    這篇文章主要介紹了python 如何使用find和find_all,爬蟲(chóng)、找文本,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼

    在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼

    這篇文章主要介紹了在Python中實(shí)現(xiàn)函數(shù)重載的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • Python中的response.text與content區(qū)別詳解

    Python中的response.text與content區(qū)別詳解

    這篇文章主要介紹了Python中的response.text與content區(qū)別詳解,?從網(wǎng)絡(luò)請(qǐng)求下來(lái)的數(shù)據(jù),他們都是字節(jié)類型的,如果服務(wù)器不指定的話,默認(rèn)編碼是"ISO-8859-1",我們使用text直接拿到的是字符串類型,沒(méi)有進(jìn)行解碼操作,則會(huì)出現(xiàn)亂碼問(wèn)題,需要的朋友可以參考下
    2023-12-12
  • 基于Python實(shí)現(xiàn)Word轉(zhuǎn)HTML

    基于Python實(shí)現(xiàn)Word轉(zhuǎn)HTML

    將Word轉(zhuǎn)換為HTML能將文檔內(nèi)容發(fā)布在網(wǎng)頁(yè)上,這樣,用戶就可以通過(guò)瀏覽器直接查看或閱讀文檔而無(wú)需安裝特定的軟件,下面我們就來(lái)學(xué)習(xí)一下Python是如何實(shí)現(xiàn)Word轉(zhuǎn)HTML的吧
    2023-12-12
  • python 用Matplotlib作圖中有多個(gè)Y軸

    python 用Matplotlib作圖中有多個(gè)Y軸

    這篇文章主要介紹了python 如何用Matplotlib作圖中有多個(gè)Y軸,幫助大家更好的利用python繪圖,感興趣的朋友可以了解下
    2020-11-11

最新評(píng)論