2017-12-24 8 views
-1

私はちょうどPythonを学び始めました。私は1つの例をしようとしていましたが、実際にこのコードが答えを返さない理由を理解できません。基本的なpythonコード - それを動作させる方法

def scores_to_rating(score1,score2,score3,score4,score5): 
    score1 = convert_to_numeric(score1) 
    score2 = convert_to_numeric(score2) 
    score3 = convert_to_numeric(score3) 
    score4 = convert_to_numeric(score4) 
    score5 = convert_to_numeric(score5) 
    min_score = min(score1, score2, score3, score4, score5) 
    max_score = max(score1, score2, score3, score4, score5) 
    sum_of_all_five_scores = score1 + score2 + score3 + score4 + score5 
    sum_of_three_middle_scores = sum_of_all_five_scores - min_score - max_score 
    average_score = sum_of_three_middle_scores/3 
    rating = average_score 
    return rating 
    print(scores_to_rating(10,20,30,40,50)) 
+0

あなたのインデントが間違っているだろう。 – jonrsharpe

+0

ちょうど呼ぶ方法 –

答えて

0

インデントの問題があります。

あなたのコードが...

def scores_to_rating(score1,score2,score3,score4,score5): 
    score1 = convert_to_numeric(score1) 
    score2 = convert_to_numeric(score2) 
    score3 = convert_to_numeric(score3) 
    score4 = convert_to_numeric(score4) 
    score5 = convert_to_numeric(score5) 
    min_score = min(score1, score2, score3, score4, score5) 
    max_score = max(score1, score2, score3, score4, score5) 
    sum_of_all_five_scores = score1 + score2 + score3 + score4 + score5 
    sum_of_three_middle_scores = sum_of_all_five_scores - min_score - max_score 
    average_score = sum_of_three_middle_scores/3 
    rating = average_score 
    return rating 
print(scores_to_rating(10,20,30,40,50)) 
+0

ありがとうございました。私は本当にインデントの問題で驚いていますが、なぜPythonコードで大きな問題になったのかまだ分かりません。 – macikgoz

+0

@macikgozインデントは、Pythonでは非常に重要です。 'return'文はあなたを関数スコープから抜け出します。実行後は何もしません。 – Vinny

関連する問題