你知道为什么这个代码不允许我继续吗。我试图在codeskulptor上输入此代码,但在运行时遇到问题。 输入[索引]=classNum
类型错误:“列表”对象不可调用。
classes = [""] * (6)
input = [0] * (5)
yoga1 = 0
yoga2 = 0
child = 0
prenatal = 0
senior = 0
sIZE = 6
classes[1] = "Yoga1"
classes[2] = "Yoga2"
classes[3] = "Children's Yoga"
classes[4] = "Prenatal Yoga"
classes[5] = "Senior Yoga"
for index in range(0, 4 + 1, 1):
print("Enter a class number")
classNum = int(input())
input[index] = classNum
if input[index] == 1:
yoga1 = yoga1 + 1
您之所以会出现此错误,是因为您已使用以下列表覆盖了名称
input
:您应该给这个变量一个不同的名称;您也不需要预先分配列表来填写它。您发布的整个代码片段可以替换为:
除了创建变量
yoga1
、yoga2
等来统计输入类号的所有次数之外,您还可以为所有类(从名称到计数)创建字典,字典理解如下:或者您可以使用
collections.Counter
类,如下所示:在最后一个示例中,
num_counts
跟踪每个类号的输入次数,然后您可以将其与classes
组合以创建name_counts
,它跟踪相同的内容,但是根据类名而不是类号name_counts['Yoga1']
告诉您1
作为类号输入的次数,等等相关问题 更多 >
编程相关推荐