我使用以下代碼創建等級分佈函數:Python的等級分佈函數,計數和打印的次數的量發生級
def distribution(grades):
available_grades = [ 'A+','A','A-','B+','B','B-','C+','C','C-','F']
fin = open(grades,'r')
gradesList = fin.readline().split(' ')
for c_grade in available_grades:
if c_grade in gradesList:
print('students got '+c_grade)
我使用的是grades.txt文件,其中包括所有的成績和我需要一種方法來計算一個檔次在文本文件中出現的次數和打印這樣的號碼,以便:
distribution('grades.txt')
6 students got A
2 students got A-
3 students got B+
2 students got B
2 students got B-
4 students got C
1 student got C-
2 students got F
,但目前只打印此:
students got A
students got A-
students got B+
students got B
students got B-
students got C
students got C-
students got F
我grades.txt文件包括:
A A- C F C C B- B A A A- B B+ B+ B+ C C- B- A A A F
您需要提供什麼你的成績文件看起來像一個樣本。 – BrenBarn
我的歉意,我會加入到我的問題。 –
爲什麼你不想使用集合?它更快,更簡單,代碼更少。 – daniel451