gpt4 book ai didi

Python bool 求助!

转载 作者:行者123 更新时间:2023-11-28 19:34:32 26 4
gpt4 key购买 nike

我有这样的代码:

if (X or Y) == ("Cat" or "Dog" or "Fish" or "Bird"):
print X, Y

它仅在 X == "Cat" 时有效。有人知道我这里的错误吗?

最佳答案

我想你想要这样的逻辑:

animals = ["Cat", "Dog", "Fish", "Bird"]
if X in animals or Y in animals:
print X, Y

在您的代码中,表达式(“猫”或“狗”或“鱼”或“鸟”)被视为逻辑表达式,我相信您不希望这样。碰巧这个表达式的计算结果为“Cat”,它解释了您观察到的行为。


>>> 'cat' or 'dog'
'cat'
>>> 'cat' and 'dog'
'dog'

这些是对字符串的逻辑操作。非空字符串被视为真值。空字符串被视为 False。 Python 的逻辑运算符返回与操作数类型相同的值(假设两个操作数类型相同)。短路评估在此处解释了 orand 的行为。

无论如何,对字符串进行逻辑运算意义不大!

关于Python bool 求助!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5275436/

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