我试图让嵌套循环正常工作,但我有很多麻烦。 我有一个列表的工作代码,但我想添加一个else语句,声明一个选项无效,然后再试一次,然后退出并返回到第一个循环,但我似乎无法让它工作,如果它不重复无效的打印代码列表中的每一项。 有人能告诉我我做错了什么吗? 工作原理:
myNames = ["Jim", "Sarah", "Jason", "Lynne", "Ginny", "Joe", "Susan"]
myScores = [88, 92, 95, 84, 85, 92, 89]
print ("Student names: Jim, Sarah, Jason, Lynne, Ginny, Joe, Susan")
name = input("Please enter a students name to find their score or q to quit: ")
while name != 'q':
for x in range(7):
if myNames[x] == name:
print(myNames[x])
print(myScores[x])
name = input("Please enter a students name to find their score or q to quit: ")
什么不起作用:
myNames = ["Jim", "Sarah", "Jason", "Lynne", "Ginny", "Joe", "Susan"]
myScores = [88, 92, 95, 84, 85, 92, 89]
print ("Student names: Jim, Sarah, Jason, Lynne, Ginny, Joe, Susan")
name = input("Please enter a students name to find their score or q to quit: ")
while name != 'q':
for x in range(7):
if myNames[x] == name:
print(myNames[x])
print(myScores[x])
else:
print("Invalid name please try again")
name = input("Please enter a students name to find their score or q to quit: ")
您的程序将根据每个可接受的名称检查输入的名称,并为每个不匹配的名称打印一条消息。相反,只有在比较失败时才需要打印消息。有一种方法:
break语句在执行时立即退出循环。在Python中for:else:construct,else:分支仅当循环在其元素中一直运行而从未碰到break语句时才执行。因此,只有当比较失败时才会打印错误消息
相关问题 更多 >
编程相关推荐