你好,我是这里的编码新手(教科书第5章),我想输入x的学生数量和每个学生的分数。最终,我会计算出每个学生的平均成绩,但现在我正为输入而苦苦挣扎。
number_students = int(input("Number of Students: ")) #get number of students
number_grades = int(input ("How many grades per student: ")) #get number of grades per student
student_list = [] #create empty student list
student_grade = [] #create empty grade list
for num in range(number_students):
student_list.append(input("Enter Student Name: ")) #create an array based on number of students
for num in range (number_grades):
student_grade.append(int(input("Enter grade for #enter student name here# "))) #create an array based on number of grades ```
我无法在student_grade输入字段中显示学生的名字,其次,是否有更好的方法使成绩列表与正确的学生相对应,而不是有一个非常长的成绩列表?也许每个学生的名字条目都是一个列表,然后将分数列表嵌入其中?
发布于 2020-06-16 04:44:07
您可以使用python字典:
number_students = int(input("Number of Students: ")) #get number of students
number_grades = int(input ("How many grades per student: ")) #get number of grades per student
student_list = {} #create empty student dictionary
for num in range(number_students):
name = input("Enter Student Name: ")
student_list[name] = []
for num in range(number_grades):
grade = input(f"Enter grade for {name} ")
student_list[name] += [grade]
输出:
Number of Students: 3
How many grades per student: 2
Enter Student Name: Johnny
Enter grade for Johnny 80
Enter grade for Johnny 92
Enter Student Name: Manny
Enter grade for Manny 78
Enter grade for Manny 59
Enter Student Name: Sarah
Enter grade for Sarah 98
Enter grade for Sarah 89
{'Johnny': ['80', '92'], 'Manny': ['78', '59'], 'Sarah': ['98', '89']}
发布于 2020-06-16 04:43:14
一种方法是使用字典列表:
number_students = int(input("Number of Students: "))
number_grades = int(input ("How many grades per student: "))
for num in range(number_students):
student_name = input("Enter Student Name: ")
student_grades = []
for num in range(number_grades):
student_grades.append(int(input(f"Enter {student_name}'s grade")))
student_list.append({
'student': student_name,
'grades': student_grades
})
print(student_list[0]['student'])
print(student_list[0]['grades'])
https://stackoverflow.com/questions/62401014
复制相似问题