Python 的逻辑运算符 AND [重复]
- 2025-02-28 08:24:00
- admin 原创
- 74
问题描述:
我对使用 Python 中的逻辑运算符得到的结果有点困惑。我是初学者,用过几本书进行学习,但它们没有像我希望的那样详细地解释。
这是我自己的代码:
five = 5
two = 2
print five and two
>> 2
它似乎只是输出两个变量。
five = 5
two = 2
zero = 0
print five and two and zero
因此,我添加了另一个变量整数。然后我打印并得到以下输出:
>> 0
后台的 Python 发生了什么?为什么输出不是 7 或 5、2 之类的值。
解决方案 1:
Python 布尔运算符返回最后求值的值,而不是 True/False。文档对此有很好的解释:
表达式
x and y
首先计算x
;如果x
为false
,则返回其值;否则,y
计算并返回结果值。
解决方案 2:
附注:(我没有足够的代表来发表评论)打印多个变量不需要 AND 运算符。您可以简单地用逗号分隔变量名称,例如print five, two
而不是print five AND two
。您还可以使用转义符将变量添加到打印行,例如print "the var five is equal to: %s" %five
。有关更多信息,请访问: http: //docs.python.org/2/library/re.html#simulating-scanf
就像其他人所说的那样,AND 是一个逻辑运算符,用于将多个条件串联在一起,例如
if (five == 5) AND (two == 2):
print five, two
解决方案 3:
5
如果表达式的计算结果为,则布尔 And 运算符将返回第一个值;如果表达式的计算结果为 ,false
则布尔 And 运算符将返回第二个值。由于和均为实数、非假和非空值,因此表达式的计算结果为真。2
`true5
2`
如果您想打印两个变量,您可以将它们连接成一个字符串并打印出来。
five = 5
two = 2
print five + " and " + two
或者打印他们的总数,你可以使用
print five + two
本文档解释了如何使用逻辑布尔运算符。
解决方案 4:
例如,Python 中的这AND
相当于&&
Java 中的。这并不意味着英语中的 and。AND
是一个逻辑运算符。假设 five 为 5,two 为 2。来自 Python 文档:表达式 x and y 首先计算 x;如果 x 为假,则返回其值;否则,计算 y 并返回结果值。基本上,它计算您案例中的最后一个整数,即 true。
if (five and two):
... print "True"
... else:
... print "False"
AND 是逻辑运算符,用于测试特定情况的逻辑,而不是算术运算符。如果您想得到 5 加 2 等于 7 这样的结果,您应该使用“+”,这意味着将两个整数相加。见下文:
>>> five = 5
>>> two = 2
>>> print five + two
7
解决方案 5:
尝试0
一下9
。
结果是0
因为的值为0
false。运算符左边的操作数and
为 False,因此整个表达式为 False,并返回0
解决方案 6:
在 Python 中,任何非零整数值为真;零为假。
OP 的值都非零。
AND 运算符从左到右进行测试,
带有 and ,如果所有值均为 True,则返回最后一个求值。如果任何值为 false,则返回第一个值。
由于两者都非零,所以都为真,因此返回最后一个值
解决方案 7:
要将整数变量转换为字符串,请在每个变量前面添加 str
五 = 5 二 = 2
打印(str(five)+“ 和 ”+ str(two))
扫码咨询,免费领取项目管理大礼包!