變數名解析 LEGB原則

2022-03-12 22:38:32 字數 489 閱讀 9589

#

-*- coding: cp936 -*-

#python 27

#xiaodeng

#變數名解析:legb原則

'''l-----local 區域性名字空間

e-----enclosing 直接外圍空間

g-----global 全域性名字空間

b-----builtin 內建名字空間

變數名是按照這個順序搜尋的。

基本原則詳細闡述:

1、變數名引用分為4個作用域進行查詢,首先是本地,之後是函式內(如有),再全域性,最後內建作用域,找到變數名之後才會停止下來

2、在預設情況下,變數名賦值會建立或改變本地變數

3、全域性宣告和非本地宣告將賦值的變數名對映到模組檔案內部的作用域

'''最重要的一句話,變數名查詢引用順序:

首先是查詢本地作用域,之後是函式內(如有),再全域性,最後內建作用域,找到變數名之後才會停止下來,否則報錯~~

Python變數作用域LEGB和變數名的查詢規則

作用域 變數起作用的範圍。legb含 釋 l local function 區域性作用域 函式內的命名空間 可以通過locals 檢視。e enclosing function locals外部巢狀作用域 外部巢狀函式的命名空間 例如closure閉包函式 g global module 全域性作用...

Python變數查詢LEGB原則

首先要知道python的基本資料型別分為2種,可變以及不可變型別。可變型別list dict set 不可變型別number tuple string 當python訪問變數值時,預設legb查詢原則,如果都找不到,則會丟擲nameerror 但是,作為對變數值進行修改,則會有兩種情況 a 10 d...

變數名命名

有些東西不明確寫出來就難以確定下來,個人寫 的命名風格一直沒有穩定下來,今天寫個筆記明確幾類主要的命名,希望可以逐步養成自己的程式設計風格。1.類名 型別名 t 每個單詞首字母大寫 例 t typename 2.列舉型別 反應型別的複數形式 例 enum colors 3.函式名 每個單詞首字母大寫...