2025.10.23(更新日: 2025.10.23)
【Python】点数のリストから順位を出す
はじめに
点数のリストから順位を出すプログラムを作成した。
ソースコード
rank_sum · ki-hi-ro/python@6e0850a
score_list = [100, 20, 30, 70, 70]
for score in score_list:
rank_count = sum(1 for s in score_list if s > score)
print(f"点数: {score}, 順位: {rank_count + 1}")
出力結果
点数: 100, 順位: 1
点数: 20, 順位: 5
点数: 30, 順位: 4
点数: 70, 順位: 2
点数: 70, 順位: 2
解説
5つの要素を持つscore_listがある。
score_list = [100, 20, 30, 70, 70]
for文で一つ一つの要素に対して処理を行う。
for score in score_list:
rank_count = sum(1 for s in score_list if s > score)
print(f"点数: {score}, 順位: {rank_count + 1}")
rank_countには、sum関数の内包表記で、自身の点数より大きい点数の数をカウントしている。
rank_count = sum(1 for s in score_list if s > score)
そして、点数と順位を出力している。
print(f"点数: {score}, 順位: {rank_count + 1}")
70の場合、70よりも大きい点数は100の一つだから、rank_countは1で、70の順位は1 + 1になる。
点数: 100, 順位: 1
点数: 20, 順位: 5
点数: 30, 順位: 4
点数: 70, 順位: 2
点数: 70, 順位: 2
コメントを残す