Python 里 and,or 的计算规则是怎样的

 我来答
从空去听8
2017-09-30 · TA获得超过7440个赞
知道大有可为答主
回答量:6907
采纳率:93%
帮助的人:5604万
展开全部
要弄明白你以上那个问题,首先你得明白几个概念。

第一,Python定义的Flase value有哪些。

None
False
zero of any numeric type, for example, 0, 0L, 0.0, 0j.
any empty sequence, for example, '', (), []. #对应第一问,空字符是False
any empty mapping, for example, {}.
instances of user-defined classes, if the class defines a __nonzero__() or __len__() method, when that method returns the integer zero or bool value False. #自己的class实现了__nonzero__ 或者 __len__()也能trick一下

然后,你要明白 and or 操作符发生了什么。

再回去看你的题目,就不难理解了吧。
然后出现 '' or 5 or 0 and 4 这种表达式在实际生产代码中,请买好保险,你的同事随时会打死你。
你应该 学会用 括号来更清楚表达逻辑。毕竟代码的可读性 > 炫技*10000000
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式