Python else条件打印多次

Python else条件打印多次,python,for-loop,conditional-statements,xlrd,Python,For Loop,Conditional Statements,Xlrd,在这里,我编写了以下代码来搜索excel工作表中的标题,它可以搜索标题,但对于每个成功的迭代,它分别打印成功,对于错误也同样如此 for i in sheet_data: if (i[0] == "BN") and (i[1] == "YOU"): found_list.append(i) print("Success") else: print("error") > 如

在这里,我编写了以下代码来搜索excel工作表中的标题,它可以搜索标题,但对于每个成功的迭代,它分别打印成功,对于错误也同样如此

    for i in sheet_data:
        if (i[0] == "BN") and (i[1] == "YOU"):      
            found_list.append(i)
            print("Success")
        else:
            print("error")
>


如果迭代一次或两次找到字符串,则只打印一次成功,因此不会打印错误。如果没有成功的迭代,则只需打印一次错误(else)。(我只需要打印成功或错误)

您在测试时总是打印一些内容,请使用临时变量并在扫描完整列表后打印结果:

success = False
for i in sheet_data:
    if (i[0] == "BN") and (i[1] == "YOU"):      
        found_list.append(i)
        success = True
if success:
    print("Success")
else:
    print("error")

在不知道输入的情况下很难预测能否显示
sheet\u data
变量?好的,如果您只想打印一次,请不要在循环中执行。一旦你知道你必须知道的,设置或清除布尔值,离开循环并打印。请正确阅读我的问题,而不是专注于我的问题。现在我得到了答案,我接受了
success = False
for i in sheet_data:
    if (i[0] == "BN") and (i[1] == "YOU"):      
        found_list.append(i)
        success = True
if success:
    print("Success")
else:
    print("error")