0
我曾嘗試這樣的代碼:python迭代語句後迭代變量是否存在?
for i in range(10)
print(line, i)
print(line, i)
,並沒有錯誤執行的程序,那麼爲什麼連for
後聲明宣佈i
,不應該再存在。
我曾嘗試這樣的代碼:python迭代語句後迭代變量是否存在?
for i in range(10)
print(line, i)
print(line, i)
,並沒有錯誤執行的程序,那麼爲什麼連for
後聲明宣佈i
,不應該再存在。
是的,當循環結束時,您的迭代變量不會被刪除。正如the documentation puts it:「循環結束時,目標列表中的名稱不會被刪除」。
這與變量作用域有關。正如已經指出的那樣,變量i
存在於你所在函數的範圍內。循環不會在python中創建額外的範圍。
範圍在一個函數內,而不是一個循環。與其他編程語言稍有不同。
看看這個問題http://stackoverflow.com/questions/3611760/scoping-in-python-for-loops –
對不起,沒有看到它 – karim