def grade(*score):
for i in range(0, score):
if score >= 90:
return "A"
elif score >=80:
return "B"
elif score >=70:
return "C"
elif score >=60:
return "D"
else:
return "F"
print(grade(87, 92, 100, 54, 72, 84, 81, 74))
引数をループして、各ループで正しいグレードを返すことができるようにしたい
回答 3 件
for student in grade_tuple: print(grade(student))
ただ1つのスコアを期待するようにgrade()を書き直すと仮定します...
def grade(score): lettered = [] for i in score: if i >= 90: lettered.append("a") elif i >=80: lettered.append("b") elif i >=70: lettered.append("c") elif i >=60: lettered.append("d") else: lettered.append("f") return tuple(lettered) print(grade((100,30,70)))
("a","f","c")
またはそれを行うためのこの興味深い方法:
def grade(score): scores = {range(90,101):"a", range(80,90):"b", range(70,80):"c", range(60,70):"d", range(1,60):"f"} return tuple([scores[gradeRange] for i in score for gradeRange in scores.keys() if i in gradeRange]) print(grade((100,30,70)))
("a","f","c")
関連記事
- JavascriptのAPIからデータをループするにはどうすればよいですか?
- ファイルPHPの各行をループする方法
- IDごとに1つのレコードを持つことができるようにdfを再形成する方法
- Pythonでforループの単語を変更する方法
- csvでフロートアイテムを1つだけ書き込むにはどうすればよいですか?
- Pythonでテキストを変更するにはどうすればよいですか?
- Django-mpttを使用するにはどうすればよいですか?
- WPFでWebView2を初期化するにはどうすればよいですか?
- PHPにC#とまったく同じ入力に署名させるにはどうすればよいですか?
- I18nロケールにCSSスタイルを配置するにはどうすればよいですか?
forループを使用して、各グレードをリストに追加し、リストを返すことができます。