深入講解Python名稱空間規則!
所謂Python名稱空間就是存放名字的空間,是對棧區的劃分,有了名稱之後,就可以在棧區中存放相同的名字。而在Python中,Python名稱空間又被分為三類:全域性名稱空間、區域性名稱空間和內建名稱空間,接下來是詳細的內容介紹。
一、名稱空間分類
1. 全域性名稱空間(Global):每個模組載入執行時建立的,記錄了模組中定義的變數,包括模組中定義的函式、類、其他匯入的模組、模組級的變數與常量。
2. 區域性名稱空間(Local):每個函式所擁有的名稱空間,記錄了函式中定義的所有變數,包括函式的入參、內部定義的區域性變數。
3. 內建名稱空間(Built-in):任何模組均可以訪問,放著內建的函式和異常(比如:input,print,str,list,tuple...)。
二、名稱空間的載入順序
內建名稱空間(程式執行前載入)-->全域性名稱空間(程式執行中:從上到下載入)-->區域性名稱空間(程式執行中:呼叫時才載入)
三、名稱空間的取值順序
在區域性呼叫:區域性名稱空間-->全域性名稱空間-->內建名稱空間
在全域性呼叫:全域性名稱空間-->內建名稱空間
綜上所述,在尋找變數時,從小範圍,一層一層到大範圍去找尋。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2929233/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python名稱空間Python
- Python名稱空間包Python
- python之深入講解變數與名稱空間及資料引數與容器引數區別Python變數
- 『無為則無心』Python函式 — 31、名稱空間(namespace)Python函式namespace
- Python中名稱空間是什麼?名稱空間生命週期是多久?Python
- 名稱空間
- Python作用域和名稱空間Python
- Python中名稱空間包簡介Python
- vuex名稱空間Vue
- PHP 名稱空間PHP
- 20200109 - 名稱空間
- PHP名稱空間PHP
- Python3 名稱空間和作用域Python
- 11. 名稱空間
- ts---名稱空間
- C++名稱空間C++
- 15-名稱空間
- 使用p名稱空間和c名稱空間的XML快捷方式XML
- 3-1 名稱空間
- PHP 核心特性 - 名稱空間PHP
- Kubernetes 名稱空間入門
- 什麼是名稱空間?
- ros節點名稱空間ROS
- 你真的知道什麼是 Python「名稱空間」嗎?Python
- c++系列:匿名名稱空間C++
- spring框架中的名稱空間Spring框架
- System.Security.Cryptography 名稱空間
- 內聯和巢狀名稱空間巢狀
- 瞭解下C# 名稱空間(Namespace)C#namespace
- php名稱空間的呼叫順序PHP
- PHP 物件導向 (三)名稱空間PHP物件
- OpenCV 名稱空間學習筆記OpenCV筆記
- C++系列: 巢狀名稱空間C++巢狀
- PHP 獲取不帶名稱空間的類名PHP
- yaml檔案中在哪加名稱空間?YAML
- Kubernetes 的層級名稱空間介紹
- 自研 PHP 框架 1.1_名稱空間PHP框架
- 【CSS模組化之路1】使用BEM與名稱空間來規範CSSCSS