python中的命名空间_深入理解Python中的命名空间和范围
Python中的命名空間和范圍
在Python中,每個包、模塊、類、函數(shù)和方法函數(shù)都擁有一個“名稱空間”,其中解析了變量名稱。下面本篇文章就來帶大家認(rèn)識一下Python中的命名空間和范圍,希望對大家有所幫助。
什么是命名空間:
命名空間是一個系統(tǒng),用于確保程序中的所有名稱都是唯一的,并且可以在沒有任何沖突的情況下使用。多個名稱空間可以使用相同的名稱并將其映射到不同的對象?!疽曨l教程推薦:Python教程】
舉個例子,計算機中的目錄文件系統(tǒng)結(jié)構(gòu)。不用說,一個人可以擁有多個目錄,每個目錄中都可以有一個具有相同名稱的文件。但是,人們可以通過指定文件的絕對路徑來定向文件。
Python中的命名空間是作為Python字典實現(xiàn)的,這意味著它是從名稱(鍵)到對象(值)的映射。用戶無需知道這一點就可以編寫Python程序以及使用命名空間時。
命名空間的類型:
本地命名空間:此命名空間包含函數(shù)內(nèi)的本地名稱。調(diào)用函數(shù)時會創(chuàng)建此命名空間,它只會持續(xù)到函數(shù)返回。
全局命名空間:此命名空間包含您在項目中使用的各種導(dǎo)入模塊的名稱。它是在模塊包含在項目中時創(chuàng)建的,并且一直持續(xù)到腳本結(jié)束。
內(nèi)置命名空間:此命名空間包含內(nèi)置函數(shù)和內(nèi)置異常名稱。
命名空間的生命周期:
命名空間的生命周期取決于對象的范圍,如果對象的范圍結(jié)束,則該命名空間的生命周期結(jié)束。因此,無法從外部命名空間訪問內(nèi)部命名空間的對象。
什么是范圍?
命名空間可以幫助我們唯一地識別程序中的所有名稱。但是,這并不意味著我們可以在任何地方使用變量名稱。名稱還有一個范圍,用于定義程序中可以使用該名稱而不使用任何前綴的部分。就像命名空間一樣,程序中也有多個范圍。
范圍是指程序的一個區(qū)域,其中可以直接訪問命名空間,即不使用命名空間前綴。換句話說:名稱的范圍是程序的一個區(qū)域,可以明確地使用該名稱,例如在函數(shù)內(nèi)部。
名稱的名稱空間與其范圍相同。范圍是靜態(tài)定義的,但它們是動態(tài)使用的。
以下是程序執(zhí)行期間可能存在的一些范圍的列表:
● 本地范圍:它是最里面的范圍,包含當(dāng)前函數(shù)中可用的本地名稱列表。
● 所有封閉函數(shù)的范圍:搜索名稱從最近的封閉范圍開始并向外移動。
● 包含當(dāng)前模塊中所有全局名稱的模塊級作用域。
● 包含所有內(nèi)置名稱列表的最外層作用域。最后搜索此范圍以查找您引用的名稱。
以上就是本篇文章的全部內(nèi)容,希望能對大家的學(xué)習(xí)有所幫助。更多精彩內(nèi)容大家可以關(guān)注碼農(nóng)之家相關(guān)教程欄目!!!
以上就是Python中的命名空間和范圍的詳細(xì)內(nèi)容,更多請關(guān)注碼農(nóng)之家其它相關(guān)文章!
以上就是本次給大家分享的關(guān)于java的全部知識點內(nèi)容總結(jié),大家還可以在下方相關(guān)文章里找到相關(guān)文章進一步學(xué)習(xí),感謝大家的閱讀和支持。
總結(jié)
以上是生活随笔為你收集整理的python中的命名空间_深入理解Python中的命名空间和范围的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何让电脑连接上 iPhone 手机的热
- 下一篇: 小甲鱼python全部视频_小甲鱼全套教