我当前的代码搜索元组列表,它将打印与输入的字符串匹配的条目。如果找不到字符串,则会输出错误。但是,即使打印出找到的结果,我的代码也会打印错误。
if scheme not in i:
print("Could not find a record with degree scheme",scheme)
我如何更改它以便它将找到for循环的所有条目,如果没有找到它则显示错误。因为目前它显示了找到的条目,然后也是"找不到.."错误。
答案 0 :(得分:1)
您可以使用标记
if choice == 1:
found_flag = False
scheme=input("Enter the degree scheme: ").upper()
for i in lst:
if i[2] == scheme:
printStud(i[0:5])
found_flag = True
if not found_flag:
print("Could not find a record with degree scheme",scheme)
答案 1 :(得分:0)
scheme
永远不在i
中,因为您使用i
来循环lst
中的元组,因此它是lst
中的单个元组}。尝试
if scheme not in [s[2] for s in lst]: