私はPythonで初心者です。私は練習のために、以下のようなコードを書いた。..出力は以下のように似ているグローバル変数がPythonのさまざまな関数で動作しないのはなぜですか?
i=1
def wrte():
global i
while i<5:
print "%s .Line..\n" %i
i+=1
def appnd():
j=i
while i in range(i,j+3):
print "%s .Line..\n" %i
i+=1
def Main():
wrte()
appnd()
Main()
それを見てください
1 .Line..
2 .Line..
3 .Line..
4 .Line..
**Traceback (most recent call last):
Line 18, in <module>
Main()
Line 16, in Main
appnd()
Line 9, in appnd
j=i
UnboundLocalError: local variable 'i' referenced before assignment**
期待される結果::次のシーケンスは
のように追加する必要がありますされます5. Line..
6. Line..
7. Line..
この上で私を助けてください..
それはそれを動作させるためにwrte'、あなたはその中でやっていることを考える 'で正しいです... –