【发布时间】:2015-11-25 12:56:11
【问题描述】:
我目前正在以 GCSE 学生的身份学习计算机科学。我和我的老师正在努力完成任务 3。任务的要求是:
然后它需要询问用户他们想查看什么类
在此之后,它需要询问他们是否想查看按字母顺序排序的文件、特定班级的高分,或者他们是否想查看所选班级中每个学生的平均成绩
import csv
print("1 for Class A\n2 for Class B\n3 for Class C")
choosen=int(input())
class_a = open('class_a.csv')
class_b = open('class_b.txt')
class_c = open('class_c.txt')
if choosen == 1:
print("1 for for alphabetical orderwith each students highest score\n2 for highest score, highest to lowest\n3 for average score, highest to lowest")
cho_two=int(input())
csv_a = csv.reader(class_a)
a_list = []
for row in csv_a:
row[1] = int(row[1])
row[2] = int(row[2])
row[3] = int(row[4])
minimum = min(row[1:2])
row.append(minimum)
maximum = max(row[1:2])
row.append(maximum)
average = sum(row[1:2])//3
row.append(average)
a_list.append(row[0:9])
if cho_two == 1:
alphabetical = [[x[0],x[6]] for x in a_list]
print("\nCLASS A\nEach students highest by alphabetical order \n")
for alpha_order in sorted(alphabetical):
print(alpha_order)
class_a.close()
elif cho_two == 2:
print("\nCLASS A\nThe highest score to the lowest \n")
for high_scr in sorted(highest_score,reverse = True):
print(high_scr)
class_a.close()
elif cho_two == 3:
average_score = [[x[8],x[0]] for x in a_list]
print("\nCLASS A\nThe average score from highest to lowest \n")
for ave_scr in sorted(average_score,reverse = True):
print(ave_scr)
class_a.close()
我在 python 中运行的代码告诉我第 13 行出现“索引超出范围”的问题
我的文本文件包含:
Roo,2,3,
Roo,4,4,
阿尔菲,5,8,
阿尔菲,2,8,
鲍勃,2,8,
康纳,3,5,
康纳,5,3,
埃利斯,5,6,
乔治,5,4,
埃利斯,4,9,
内森,5,6,
乔治,5,5,
阿尔菲,9,4,
乔治,4,7,
赛利斯,4,5,
狮子座,3,2,
赛利斯,6,1,
狮子座,5,2,
【问题讨论】:
-
如果您可以将代码复制并粘贴到您的答案中,而不是添加它的图像,这将有所帮助。
-
请不要发布您的代码编辑器的屏幕截图 - 代码是文本,文本可以在这里发布(如果不是太长 - 但如果太长,您应该发布一个简化的示例来重现问题)。
-
我自己在学校帮忙,图片被过滤了,请添加为文本:)
-
欢迎 :) 我建议将您的代码粘贴到其他人可以复制的地方,例如 GitHub Gists。另外,第二句结尾有什么遗漏吗?最后一件事:记住 Python 是零索引的,所以序列中的第一项索引是 0。
-
我的代码现在对任何希望提供帮助的人提出问题
标签: python coding-style computer-science