一.算术操作符
注意:Python中\\表示为地板除法,即计算结果取比商小的最大整型,也就是舍弃小数的意思。
>>> a = 5
>>> a = a+3
>>> a
8
>>> a = b = c = d = 10
>>> a
10
>>> a += 1
>>> a
11
>>> d /= 8
>>> d
1.25
>>> 10 // 8
1
>>> 3.0 // 2
1.0
>>> 5 / 2
2.5
>>> 5 % 2
1
二.优先级问题
注意:在Python中双星号**代表求幂,**比左边的优先级高,比右侧的优先级低
>>> 2 ** 3
8
>>> -3 ** 2
-9
三.比较运算符
比较操作符包括:< <= > >= == !=
比较操作符根据表达式的值的真假返回布尔类型的值。
四.逻辑运算符
逻辑运算符包括: and or not
and :同真为真
or:同假为假
not :它的作用是得到一个和操作数相反的布尔类型的值
>>> not 0
True
>>> not 4
False
>>> 3 < 4 <5
Python操作运算符优先级
测试题
0. Python 的 floor 除法现在使用 “//” 实现,那 3.0 // 2.0 您目测会显示什么内容呢
如果回答是 1.5 那么很遗憾,您受到 C 语言的影响比较大,Python 这里会义无反顾地执行 floor 除法原则,答案是:1.0
1. 请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
如果你的回答是 0,那么小甲鱼很开心你中招了!
答案是:4
not or and 的优先级是不同的:not > and > or
我们按照优先级给它们加上括号:(not 1) or (0 and 1) or (3 and 4) or (5 and 6) or (7 and 8 and 9)
== 0 or 0 or 4 or 6 or 9
== 4
为啥是 4?
2. 还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用什么方法可以“委曲求全”代替“%”的功能呢?
因为上节课我们还没有教大家“求余”的操作,所以使用了“if year/400 == int(year/400)”这样的方式来“委曲求全”。
大家还记得第四讲作业提到的“短路逻辑”吗?3 and 4 == 4,而 3 or 4 == 3。
所以答案是:4