2005-05-06

関数からグローバル変数を使うとき


x = "Hello"
def hoge():
x = "Bye"
hoge()
print x


上のスクリプトを実行すると、「Hello」 と表示されます。変数 x を書き換えたつもりなのに。次のスクリプトのように global で、グローバル変数であることを明に指定すればよいです。だから、グローバル変数を使うな、と。




x = "Hello"
def hoge():
global x
x = "Bye"
hoge()
print x