【发布时间】:2021-08-22 22:42:06
【问题描述】:
我有这段代码,但每当我运行它时,我只得到 9。我对 python 很陌生,所以我不能 100% 确定 .weight 部分是否正确,但如果是,那么我不知道是什么是错的。患者参数为:姓名、身份证、出生日期、身高、体重
from func import Patient
p1 = Patient("John", 131, "03/09/03", 5.2, 155)
p2 = Patient("Josh", 151, "05/18/05", 5.8, 195)
p3 = Patient("Jacob", 179, "12/14/09", 6.5, 105)
patientList = [p1, p2, p3]
def getWeight(weight):
for i in range(len(patientList)):
if weight == patientList[i].weight:
return patientList[i]
else:
return 9
print(getWeight(105))
【问题讨论】:
-
为什么需要循环索引?循环数组
-
发布
Patient类定义,因为getWeight看起来应该可以工作 -
@flaxon 我试过了。每当我这样做时,我都会得到:“TypeError:列表索引必须是整数或切片,而不是患者”
-
@BatWannaBe 患者类非常简单: class Patient: def __init__(self, name, idNumber, DOB, height, weight): self.name = name, self.idNumber = idNumber, self .DOB = DOB,self.height = 身高,self.weight = 体重
-
你没有传入函数 patientList