2016/11/13

[py]グローバル変数は前方参照じゃないんだ

こんなコードを書いた。

fname = ''

def change_fname(name):
    global fname
    fname = name

fname = 'default'
print fname
change_fname('kuma')
print fname

動くのだが、pyCharmが「default」を代入しているfnameのところでwarningを出している。

image

 

グローバル変数は最初に定義しないとダメだと思っていたのだが、まさか・・・。

def change_fname(name):
    global fname
    fname = name

fname = 'default'
print fname
change_fname('kuma')
print fname

warningが消えた。
それに、ちゃんと動く。
動くんだ。。。

 

いやぁ、スクリプト言語って、難しいわあ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。

注: コメントを投稿できるのは、このブログのメンバーだけです。