1. 程式人生 > 其它 >9.6 名稱空間

9.6 名稱空間

# 名稱空間是什麼?
# 就是放名字的地方
# 詳細解釋:存放的是變數名與變數值的記憶體地址得繫結關係的地方
# 要想訪問一個變數的值 必須先去名稱空間中拿到對應的名字 才能夠訪問變數的值

# name = 'jason'
# print(name)


x = 1

if 1 == 1:
y = 2

# print(y)
# while True:
# z = 3
for i in [1, 2, 3]:
print(i)
print(i)


def func():
username = 'jason'


print(x)
func()

"""
名稱空間的分類
1.內建名稱空間:python直譯器提前給你定義好的名字(已經存放到內建名稱空間中了)
len
max
min

2.全域性名稱空間:檔案級別的程式碼
x = 1

if 1 ==1 :
y = 2

print(y)
while True:
z = 3

x,y,z都會放到全域性名稱空間
if for while 無論巢狀多少層 它們內部所建立的名字都是全域性名稱空間的
3.區域性名稱空間:函式體內建立的名字都屬於區域性名稱空間
username



生命週期:

內建名稱空間:只要python直譯器已啟動立馬建立 關閉python直譯器的時候內建名稱空間自動銷燬
全域性名稱空間:只要你右鍵執行py檔案會自動建立 py檔案程式執行結束自動銷燬
區域性名稱空間:函式被呼叫的時候自動建立 函式指向結束立即銷燬(動態建立動態銷燬)


名字的查詢順序
1.需要先確定你當前在哪(大前提)
1.站在全域性: 全域性 >>> 內建
2.站在區域性: 區域性 >>> 全域性 >>> 內建


"""