Python else 条件打印多次

Python else condition prints several times

这里我写了下面的代码来从excelsheet中搜索headers,它可以搜索headers,但是对于每次成功的迭代,它分别打印成功,对于错误。

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

>

error
error
error
Success
error
Success
error
error

如果迭代一次或两次找到字符串,则只打印一次成功,因此不会打印错误。如果没有成功的迭代,那么它只需要打印一次 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")