逻辑运算符问题

来源:5-9 逻辑运算符

慕婉清9648965

2017-09-15

在IDEL里面输入 [1] or [] == 0 为什么返回的是[1]


写回答

2回答

郭纯

2017-09-15

因为关系(比较)运算符的优先级别为7 , or逻辑的运算符的优先级别为12 。==的优先级大于or 所以 
[1] or []==0  可以表示为 [1] or ([]==0)  。 []==0  为false (不同的类型比较为false)  然后变为 [1] or false .又因为or 运算符 (当判断第一个元素为真的时候就直接返回结果不会在判断第二个,如果第一个元素为假直接返回第二个结果) 因为[1] 为真 。就直接返回 [1].

3
2
郭纯
回复
慕婉清9648965
客气呀 共勉
2017-09-15
共2条回复

7七月

2017-09-15

这个是运算符优先级的问题,第六章有讲,你看后面的很快会明白。楼下郭老师也回答的很好

1
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14596 学习 · 4469 问题

查看课程