Skip to main content
 首页 » 编程设计

python之程序忽略 if 语句,并在 False 时打印 True

2025年05月04日21虾米姐

我正在为家庭作业问题编写一个简单的程序,它似乎跳过了我的 if 语句。看了其他问题,好像不是我的问题,希望能帮到你。

def isWordGuessed(secretWord, lettersGuessed): 
if lettersGuessed == []: 
    return False 
else: 
    for i in lettersGuessed: 
        if i in secretWord == False: 
            return False 
 
        else: 
            if i == lettersGuessed[-1]: 
                return True 

当我放置一些打印函数来查看它在做什么时,它完全跳过了

if i in secretWord == False: 

我已经放在这条线的正上方

print i in secretWord 

它会打印出正确的 bool 值,但即使打印出 False,它仍然会跳过 if 语句。我觉得我必须忽略一些非常基本的东西,但我似乎无法弄清楚它是什么,所以任何帮助将不胜感激。谢谢

编辑:

这是一个使用输入调用这个函数的例子

isWordGuessed('apple',['a','e','i','k','p','r','s']) 

请您参考如下方法:

        if i in secretWord == False: 

这并不像您想象的那样。如果您希望在 i 不在 secretWord 中时采用此路径,您需要

        if i not in secretWord: 

你有一个 chained comparison .首先,它检查

i in secretWord 

如果是,则检查

secretWord == False 

如果这是真的(它不会是),那么它会采用 if 路径。