【发布时间】:2017-11-15 15:24:48
【问题描述】:
这是我的代码:
firstname = ["Mark", "Rohan", "Matt" , "Anthony" , "Teddy" , "Kyle" , "Bob"]
lastname = ["Wightman", "Red", "Silver" , "Blue" , "Green" , "Orange" , "Purple"]
age = ["15",'5', '16', '21years', '17.6', '19', '-18', '917']
input_firstname = input('What is first name?: ')
input_lastname = input('What about your last name?: ')
input_age = input('What is your age?: ')
firstname.append(input_firstname)
lastname.append(input_lastname)
age.append(input_age)
index = 0
valid = True
for original in age:
if len(original) < 2:
valid = False
elif original.isdigit() == False:
valid = False
elif (len(original) > 2) and original[2].isdigit():
valid = False
elif len(original) > 2 and original[2] == ".":
neworiginal = original[0:2]
original = neworiginal
elif valid == True:
print ("%s, %s, %s") %(firstname(original), lastname(original), age(original))
index = index +1
这个程序应该打印名字列,然后是姓氏列,然后是年龄列,例如: 马克·怀特曼,15 岁 罗汉,红,5
等等。但是,当代码运行时,有一个错误说在“打印(”%s,%s,%s“)%(名字(原始),姓氏(原始),年龄(原始)”行“列表" 对象不可调用。这个项目的目标是使用列表、for 循环和条件来清理年龄数据并将其打印到 3 列中。
【问题讨论】:
-
您希望
firstname(original)做什么?索引到您的列表中?如果是这样,索引符号的语法为firstname[index],其中index是一个整数。 -
谢谢,改了一点,还是有错误。我期待它索引我的列表。它现在抛出的错误是“列表索引必须是整数或切片,而不是 str”
标签: python python-3.5 pythonanywhere