Python 2.7 布尔运算逻辑
Python 2.7 Boolean Operators Logic
我目前正在学习 Python 2.7 并遇到了相等和布尔运算符
我的问题是:
为什么 False and 1
是 False
而 True and 1
是 1
同样,False or 1
是 1
但 True or 1
是 True
谁能解释一下为什么会这样
非常感谢
and returns 它看到的第一个 'falsy' (假、零、空字符串或列表等)值,或者如果none 是假的。甚至不会评估更多值,因为它们无法更改结果。
或同样returns它看到的第一个'truthy'(真、非零、非空字符串或列表等)值(或最后一个,如果有 none),并且不评估其余部分。
这种行为有时比严格只返回 True 或 False 更方便。
我目前正在学习 Python 2.7 并遇到了相等和布尔运算符
我的问题是:
为什么 False and 1
是 False
而 True and 1
是 1
同样,False or 1
是 1
但 True or 1
是 True
谁能解释一下为什么会这样
非常感谢
and returns 它看到的第一个 'falsy' (假、零、空字符串或列表等)值,或者如果none 是假的。甚至不会评估更多值,因为它们无法更改结果。
或同样returns它看到的第一个'truthy'(真、非零、非空字符串或列表等)值(或最后一个,如果有 none),并且不评估其余部分。
这种行为有时比严格只返回 True 或 False 更方便。