标签:同时存在 第一题 false 公司 int 结果 str and first
不知道别人是怎么学这些pyhton运算符的,会写一些基础的python脚本,可这些规则我经常搞错,作为一名运维人员,这看似简单的东西却偏偏是一些公司面试经常考的东西,觉得很有必要再次总结一下,方便以后翻阅。and or not同时存在,先算括号,然后算not,再算and,最后算or
print(3 > 4 or 4 < 3 and 1==1)
#思路:先算and,4<3是False,1==1是True,再算3>4是False,等于说是False or False and True,这时候False and True的结果是False,所以是False or False的结果是False
print(1 < 2 and 3 < 4 or 1 > 2)
#思路:True and True or False,然后是True or False,所以最终结果是True
print(2 > 1 and 3 < 4 or 4 > 5 and 2 <1)
#思路:True and True or False and False ,其实看or 前面的True and True 就知道本题答案是True,因为or有一个结果为True,最终结果就是True
print(1 > 2 and 3 < 4 or 4 > 5 and 2 > 1 or 9 < 8)
#思路:False and True or False and True or False,就是False or False,最终结果为False
print(not 2 > 1 and 3 < 4 or 4 > 5 and 2 > 1 and 9 > 8 or 7 < 6)
#对于下面两道题真的有坑,我习惯先算and,然后算>,其实大错特错,如果真是先算and,那么第一题照这个思路是成立的,第二题就说不过去了,来执行代码让解释器告诉我们结果
print(2 > 5 and 3)
print(2 > 5 and 1)
#思路:False相当于0 ,True是非0,2 > 5是0,就是等于说是0 and 1,所以是0,就是False
C:\Users\cheng>python first.py
False
False
print(2 < 1 and 4 > 6 or 3 and 4 > 5 or 6)
#思路:第一步False and False or 3 and False or 6,第二步True or False or 6
第三步False or 6,最终结果为6
C:\Users\cheng>python first.py
6
标签:同时存在 第一题 false 公司 int 结果 str and first
原文地址:https://blog.51cto.com/12943999/2361942