2017-01-08 7 views
0

関数内で変更するグローバル変数がありますが、別の関数のコードでグローバル変数を呼び出すと、変数が最初に呼び出されたときに変更が保存されません。変更されたデータグローバル変数を保持する

name = "noname" 

    def username(): 
     print ("It would help if I had a name to go by, please enter a name.") 
     global name 
     name = input() 

    def character(): 
     global name 
     print ("Character overview:\nName:"+name+"") 

また、character()の出力は入力ではなく、nonameです。 最初の機能の変更を維持する方法はありますか?

+1

これをどのように呼び出すかについての詳細を含めることはできますか?上記を使い、単に 'username()'と 'character()'を呼び出すだけでうまくいきます。ここに示されていない何か他のものが干渉しているに違いありません。 –

答えて

0

これは私のために働く。

name = "noname" 

def user(): 
    global name 
    name = input() 

def char(): 
    # Works with or without global here 
    print(name) 

user() 
char() 
+0

これは助けてくれてありがとう、しかし、輸入は何ですか? – Frank

+0

あなたは正しいですか?input()には必要ありません。 – sezi80

関連する問題