在這段代碼中,爲什麼a
和b
在各自塊的末尾沒有被破壞?爲什麼對象允許在一個塊之後使用?
flag = True
if flag:
a = 1
for i in range(2):
b = 2
print(a, b)
相反,此代碼打印1 2
。爲什麼Python允許這樣做?我何時可以依靠這種行爲?
在這段代碼中,爲什麼a
和b
在各自塊的末尾沒有被破壞?爲什麼對象允許在一個塊之後使用?
flag = True
if flag:
a = 1
for i in range(2):
b = 2
print(a, b)
相反,此代碼打印1 2
。爲什麼Python允許這樣做?我何時可以依靠這種行爲?
因爲Python沒有塊範圍。 –