StoryEdit 開発日誌

ウェブアプリ StoryEditを作ってましたが延期。普通のブログ。

global文

なんと!

びっくり。global文をつかわないと,問答無用にローカル変数の代入となるらしい。そうか。完全に変数宣言なるものがないとこうなるのか。普通名前空間はカスケーディングするもんだけど...いや、global文なくてもカスケードして問題なさそうだけど、、、宣言なしに使うということが想定されるにしたって、グローバルと同じ名前つかったらプログラマのミスな気もするけどな。。。

hoge = 10

def test():
  hoge = 10 ## ローカル変数

def test2():
  global hoge = 10; ## グローバル変数

まぁグローバルなんて使わないからいいけどさ。
(じゃあなんでこんなことに気づいたのか、というのは,
あるサンプルコードに含まれてたから。念のため。)