タグ

ブックマーク / www.ops.dti.ne.jp (1)

  • 関数の中でグローバル変数に代入する

    実は関数の中でグローバル変数に代入できない 驚愕の事実です。ふと触っていてこのことに気づきました。例えば・・・ #coding: shift-jis a = "ABC" def function(): print a function() raw_input() 出力画面: ABC これはいい。でも次はどうだろうか。 #coding: shift-jis a = "ABC" def function(): a = "DEF" print a function() print a raw_input() 出力画面: DEF ABC 上のようにfunction内で変数aは、代入した時点でローカル関数になる。つまり関数内での記述によって、グローバル変数の値が変わってしまうという事故はなくなるけれども、関数内でグローバル変数に代入したい場合どうしたらいいの?という話になる。 global宣言 それ

  • 1