Python if 语句中的 For 循环

原文标题For Loop Within an If Statement Python

我在另一个 for 循环中使用一个 for 循环来迭代和比较两个数据集。我想首先使用内部 for 循环来检查条件,然后,如果失败,则从外部循环打印一个值。

例如:

for (i) in list_one:

    for (j) in list_two:
        
        if (condition):

            print(j)

如果 list_two 中的所有实例的“print(j)”条件都失败,我希望打印 list_one 的当前值。 ‘if: for:’ 之类的语句似乎是有道理的,但我不确定这些在 Python 中是否可行。谢谢您的帮助

原文链接:https://stackoverflow.com//questions/71463920/for-loop-within-an-if-statement-python

回复

我来回复
  • wogsland的头像
    wogsland 评论

    您可以添加一个失败标志,例如

    for (i) in list_one:
        fail = True
        for (j) in list_two:
            if (condition):
                fail = False
                print(j)
        if fail:
            print(i)
    
    2年前 0条评论
  • Shivam Agrawal的头像
    Shivam Agrawal 评论

    如果只需要打印第一个满足condition然后跳出循环,那么可以使用for ... else

    for (i) in list_one:
        for (j) in list_two:
            if (condition):
                print(j)
                break
        else:
            print(i)
    

    如果要打印所有满足conditionin内循环的值,可以使用多一个变量

    for (i) in list_one:
        print_i = True
        for (j) in list_two:
            if (condition):
                print(j)
                print_i = False
        if print_i:
            print(i)
    
    2年前 0条评论