我對python中變量的作用域感到困惑。這裏是什麼,我試圖做一個玩具的例子:for/if循環和python變量的作用域
a = True
enumerated_set = enumerate(['tic','tac','toe'])
for i,j in enumerated_set:
if a == True:
print j
結果我得到的是:
tic
tac
toe
現在
,
print a
回報
`True`
如果我再跑一次
for i,j in enumerated_set:
if a == True:
print j
我沒有輸出。
我很困惑...因爲全球範圍內a = True
,爲什麼在第二個循環中打印沒有執行。
我感謝您的幫助。
編輯:在這裏我很困惑
y = 'I like this weather'.split()
for item in y:
for i,j in enumerated_set:
if a == True:
print j
也不會產生輸出另一個例子....
您每次需要使用時都需要重新創建由'enumerate'創建的生成器。 –