我是python的新手,正在努力解决家庭作业问题。我需要创建一种方法来计算学生已累积的学分数量,并将其作为浮点数返回
我对如何进行不知所措。我列出了我创建的两个类,并且需要
class Course(object):
def __init__(self, title, year, semester, credits, grade):
self.title = title
self.year = year
self.semester = semester
self.credits = credits
self.grade = grade
class StudentRecord(object):
def __init__(self, firstName, lastName, dob, hsName, hsCity, hsState, degree, address, transcript = [], newcourse = []):
self.firstName = firstName
self.lastName = lastName
self.dob = dob
self.hsName = hsName
self.hsCity = hsCity
self.hsState = hsState
self.degree = degree
self.address = address
self.transcript = transcript
self.newcourse = newcourse
def credits():
我知道前两节课都可以在Mimir作业中工作,但是正在努力进行def credits():
任何帮助将不胜感激。
答案 0 :(得分:1)
看来transcript
将是学生已完成的Course
的列表,而newcourse
是本学期将要完成的Course
的列表。如果是这样,则需要对transcript
求和,course.credits
循环遍历:
def credits(self):
return sum(course.credits for course in self.transcript)
您还应该阅读this question及其答案,以了解为什么__init__
中的默认参数可能会引起问题。