gpt4 book ai didi

python - 为什么我的 True 陈述不起作用?

转载 作者:太空宇宙 更新时间:2023-11-04 07:39:55 24 4
gpt4 key购买 nike

这是一本字典:

Vocab ={'Adherent' : " supporter; follower.",
'Incoherent' : "without logical or meaningful connection; disjointed; rambling",
'Inherent' : "existing in someone or something as a permanent and inseparable element, quality, or attribute"}

我在循环中创建了一组简单的 if 语句:

while 1:
x = Vocab[random.choice(Vocab.keys())]
print x
t1=raw_input("What word matches this definition?: ")
if t1 in Vocab == True:
if Vocab[t1] == x:
print "That's correct!"
elif Vocab[t1] != x:
print "That's wrong!"
else:
print "That's not a word!"
raw_input("Hit 'enter': ")

由于某些奇怪的原因,当用户输入字典中的键时,代码输出:

"That's not a word"

为什么带有“== True”的 if 语句不起作用?

最佳答案

您不需要使用if t1 in Vocab == True,只需使用if t1 in Vocab

问题是操作数的优先级。 == 优先于 in,所以当你写 if t1 in Vocab == True 时,python 解释为 if t1 in ( Vocab == True).

为了解决优先级问题,你可以这样写:if (t1 in Vocab) == True:,但是同样不需要比较t1 in的结果VocabTrue,简单使用:

if t1 in Vocab:

关于python - 为什么我的 True 陈述不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24335199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com