簡體   English   中英

如何在while循環語句中引用具有布爾項作為值的字典?

[英]How can I reference a dictionary with boolean terms as values in a while-loop statement?

我有這本字典:

flips_left = {'front flip': True,
              'side flip': True,
              'back flip': True
}

所有值均為True

我有這個while循環:

while flips_left[flip_choice] == True:
            flip_choice = raw_input("Do a flip ")
            if flip_choice in flips_left:
                if flips_left[flip_choice]:
                    print flip_lines[flip_choice]
                    flips_left[flip_choice] = False
                else:
                    print "You already did a %s" % flip_choice
            else:
                print "That is not a type of flip"

        print "Great! You completed the WOD!"

我基本上想要當dict中所有值都為false時退出while循環的方法。

any()測試傳遞的iterable的每個元素的真實性。

while any(flips_left.itervalues()):

這是另一種避免重復掃描flips_left.itervalues()代碼結構

for flip in flips_left:
    while True:
        flip_choice = raw_input("Do a flip ")
        if flip_choice in flips_left:
            if flips_left[flip_choice]:
                print flip_lines[flip_choice]
                flips_left[flip_choice] = False
                break
            else:
                print "You already did a %s" % flip_choice
        else:
            print "That is not a type of flip"

print "Great! You completed the WOD!"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM