【发布时间】:2021-05-20 07:28:48
【问题描述】:
我想指出,这是一个更大的脚本的一部分,但为了简单起见,我已经隔离了必要的组件。
我正在编写一个脚本来使用class Student 存储学生姓名及其相关成绩(除其他外)。系统将要求用户输入学生姓名,然后是他们想要添加的成绩数。然后要求他们输入成绩(无论他们在“成绩数”中指定多少次)。
输入完成后,数据存储在一个数组中,如下所示:
[{'grades': [99, 88, 77], 'name': 'John Doe'}]
然后以以下格式打印新的学生数据:
STUDENT NAME: John Doe
GRADES: [99, 88, 77]
如何格式化和打印不带括号的GRADES: [99, 88, 77]?代码如下。
students_all = []
class Student:
def __init__(self, name, grades):
self._name = name
self._grades = grades
def __str__(self):
return "STUDENT NAME: {}\nGRADES: {}".format(self._name, self._grades)
###FORMAT HERE^?###
def add_student():
new_student = {}
new_student["grades"] = []
new_student["name"] = input("\nEnter student name: ")
while True:
try:
num_grades = int(input("Number of Grades: "))
break
except ValueError:
print("Enter a valid number!")
print()
while True:
try:
for i in range(0, num_grades):
grades = int(input("Enter Grade: "))
new_student["grades"].append(grades)
break
except ValueError:
print("Enter a valid number!")
students_all.append(new_student)
return new_student
newstudent = Student(**add_student())
print(newstudent)
【问题讨论】: