2016-03-23 13 views
1

関数内で変数を使う方法は知っていますが、関数の外でも使うことができます。 答えが正しいときにスコアに1を加え、その後に全体のスコアをプリントアウトするはずのコードの一部です(複数の関数があるため、関数の外にスコアが必要です) :あなたが見ることができるように変数を関数の内側と外側にするにはどうすればよいですか?

score=0 
def Geography(score): 
#Question 1 
qa1= input("What is the capital of England? ") 
if qa1.lower() == ("london"): 
    print ("Correct you gain 1 point") 
    score=score+1 
else: 
    print ("Incorrect") 

Geography(score) 
print ("This quiz has ended. Your score is " , score, ".") 

、私は人が回答権を持っている場合、コードはまだ終わりに関係なく0としてスコアを返しますが、引数を使用しようとしました。機能から

答えて

1

戻りscoreとバックscore

score=0 
def Geography(score): 
    #Question 1 
    qa1= input("What is the capital of England? ") 
    if qa1.lower() == ("london"): 
     print ("Correct you gain 1 point") 
     score=score+1 
    else: 
     print ("Incorrect") 
    return score 

score = Geography(score) 
print ("This quiz has ended. Your score is " , score, ".") 
+0

に割り当てるこれは自分自身を繰り返すコードの原因となるが、それでもスコアはどのようにそれは、コード自体を繰り返させない0 – Sofia

+0

であることを述べていますか?私はちょうどそれをテストし、それは正常に働いた。質問に入れていないものがコード内にたくさんありますか? – Munir

+0

申し訳ありませんが、コードはもう繰り返さない、それは私のせいでした。 if文の中にある関数を呼び出す際には、ユーザが選択する必要のある関数が2つ以上あります。 – Sofia

関連する問題