您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

打破Python中的嵌套(双重)循环

打破Python中的嵌套(双重)循环

可能不是您想要的,但是通常您需要将Afterbreak设置findTrue

for word1 in buf1: 
    find = False 
    for word2 in buf2: 
        ... 
        if res == res1: 
            print "BINGO " + word1 + ":" + word2 
            find = True 
            break             # <-- break here too
    if find: 
        break

另一种方法是使用生成器表达式将squash压缩for为单个循环

for word1, word2 in ((w1, w2) for w1 in buf1 for w2 in buf2):
    ... 
    if res == res1: 
        print "BINGO " + word1 + ":" + word2
        break

您也可以考虑使用 itertools.product

from itertools import product
for word1, word2 in product(buf1, buf2):
    ... 
    if res == res1: 
        print "BINGO " + word1 + ":" + word2
        break
python 2022/1/1 18:26:02 有348人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶