Python中的變量和作用域詳解
作用域介紹
python中的作用域分4種情況: L:local,局部作用域,即函數(shù)中定義的變量;
E:enclosing,嵌套的父級(jí)函數(shù)的局部作用域,即包含此函數(shù)的上級(jí)函數(shù)的局部作用域,但不是全局的;
G:globa,全局變量,就是模塊級(jí)別定義的變量; B:built-in,系統(tǒng)固定模塊里面的變量,比如int, bytearray等。 搜索變量的優(yōu)先級(jí)順序依次是:作用域局部>外層作用域>當(dāng)前模塊中的全局>python內(nèi)置作用域,也就是LEGB。
x = int(2.9) # int built-in g_count = 0 # global def outer(): o_count = 1 # enclosing def inner(): i_count = 2 # local
當(dāng)然,local和enclosing是相對(duì)的,enclosing變量相對(duì)上層來(lái)說(shuō)也是local。
#定義變量a >>> a = 0 >>> print a 0 #定義函數(shù)p() >>> def p(): ... print a ... >>> p() 0 #定義函數(shù)p2() >>> def p2(): ... print a ... a = 3 ... print a ... >>> p2() # 運(yùn)行出錯(cuò),外部變量a先被引用,不能重新賦值 Traceback (most recent call last): File "<interactive input>", line 1, in <module> File "<interactive input>", line 2, in p2 UnboundLocalError: local variable 'a' referenced before assignment #定義函數(shù)p3() >>> def p3(): ... a = 3 # 不引用直接賦值 ... print a ... >>> p3() 3 >>> print a 0 # 外部變量a并未改變
以上所述是小編給大家介紹的Python中的變量和作用域詳解,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
pytorch中backward()方法如何自動(dòng)求梯度
這篇文章主要介紹了pytorch中backward()方法如何自動(dòng)求梯度問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
對(duì)python多線程SSH登錄并發(fā)腳本詳解
今天小編就為大家分享一篇對(duì)python多線程SSH登錄并發(fā)腳本詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-02-02
python和pygame實(shí)現(xiàn)簡(jiǎn)單俄羅斯方塊游戲
這篇文章主要為大家詳細(xì)介紹了python和pygame實(shí)現(xiàn)簡(jiǎn)單俄羅斯方塊游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06
利用Python中的pandas庫(kù)對(duì)cdn日志進(jìn)行分析詳解
這篇文章主要介紹了利用Python中的pandas庫(kù)進(jìn)行cdn日志分析的相關(guān)資料,文中分享了pandas對(duì)cdn日志分析的完整示例代碼,然后詳細(xì)介紹了關(guān)于pandas庫(kù)的相關(guān)內(nèi)容,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。2017-03-03
Python使用Bokeh進(jìn)行交互式數(shù)據(jù)可視化
Bokeh是一個(gè)Python庫(kù),用于在Web瀏覽器中創(chuàng)建交互式數(shù)據(jù)可視化,這篇文章主要為大家學(xué)習(xí)介紹了如何使用Bokeh實(shí)現(xiàn)回執(zhí)交互式數(shù)據(jù)可視化圖表,感興趣的可以學(xué)習(xí)一下2023-07-07
Python利用雪花算法實(shí)現(xiàn)生成唯一ID
雪花算法是在一個(gè)項(xiàng)目體系中生成全局唯一ID標(biāo)識(shí)的一種方式,偶然間看到了Python使用雪花算法不盡感嘆真的是太便捷了。本文就來(lái)聊聊這具體的實(shí)現(xiàn)方法,感興趣的可以了解一下2022-11-11
Python程序?qū)崿F(xiàn)向MySQL存放圖片
這篇文章主要介紹了Python程序?qū)崿F(xiàn)向MySQL存放圖片,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03

