对于我的IS计算机科学课,我们正在学习如何使用课程。这是我最难理解的部分,我一直在努力解决我可能找到的所有问题,但我一直陷入困境。其中一个如下:
GymStats
,用于存储一个人的姓名,深蹲和硬拉(以磅为单位)进行一系列锻炼。addStats(s, d)
应该从单次锻炼中添加数据(2个数字,以磅为单位)。getSquatStats()
和getDeadliftStats()
,每种方法都会返回相应练习的最小长度,最大值和平均值的3个元组。showAll()
打印此人输入统计信息的完整列表。以下是给出的例子:
>>>g = GymStats('Andrew')
>>>g.addStats(200,250)
>>>g.addStats(220, 300)
>>>g.addStats(234, 284)
>>>g.GetSquatsStats()
(200, 234, 218)
>>>g.getDeadliftStats()
(250, 234, 218)
>>>g.showAll()
Andrew's gym stats:
Squat: Deadlift
200 250
220 300
234 284
到目前为止,这就是我的全部内容:
class GymStats:
def __init__(self, s, d):
self.s = s
def addStats(s,d):
'nothing yet'
def getSquatStats():
count = 0
for int in s:
count +=
return (min(s), max(s),
def getDeadLiftStats():
count 2 - =
return (min(d), max(d),
def showAll()
print s 'gym stat"s':
return ('Squat'.... 'Deadlift')
我不知道如何平均线之间的数字,所以我一直坚持下去。而且我不确定哪些命令应该去哪里。任何帮助都会非常感激。
答案 0 :(得分:1)
这将帮助您入门:
class GymStats:
def __init__(self, name):
self.name = name
self.squats = []
self.deadlifts = [] # now every object (instantiation) of class GymStats has a name, a squats that is an list and a deadlifts that is a list
def addStats(self, squat, deadlift):
self.squats.append(squat)
self.deadlifts.append(deadlift) # since GymStats can only be made via __init__, we know for a fact that squats and deadlifts exist and are lists
def GetSquatsStats(self):
return (min(self.squats), max(self.squats)) # now add the average as the third tuple member
要查找数字列表的平均值,您需要找到两件事:
- 所有数字的总和(提示:python中有一个内置函数可以执行此操作)
- 列表中有多少数字(同样是内置的)
然后你只需要分开一个。
其余部分应该从这里显而易见。