1+2*3 就是一个表达式,这里的加号和乘号叫做运算符,1、2、3叫做操作数。1+2*3 经过计算后得到的结果是7,就1+2*3 = 7。我们可以将计算结果保存在一个变量里,ret = 1-2*3 。 所以表达式就是由操作数和运算符组成的一句代码或语句,表达式可以求值,可以放在“=”的右边,用来给变量赋值。
算术运算符 : + - * / //(取整除) %(取余) **(次方)
赋值运算符: = 、+= -= *= /= %= //= **=
>>> num = 2 >>> num += 1 # 等价于 num = num + 1 >>> num -= 1 # 等价于 num = num - 1 >>> num *= 1 # 等价于 num = num * 1 >>> num /= 1 # 等价于 num = num / 1 >>> num //= 1 # 等价于 num = num // 1 >>> num %= 1 # 等价于 num = num % 1 >>> num **= 2 # 等价于 num = num ** 2
比较运算符:>、 <、 >=、 <=、 ==、!= True False True和False 用来表示比较后的结果。
逻辑运算符: not 、and、 or
逻辑运算符是用来做逻辑计算的。像我们上面用到的比较运算符,每一次比较其实就是一次条件判断,都会相应的得到一个为True或False的值。而逻辑运算符的的操作数就是一个用来做条件判断的表达式或者变量。
成员运算符: not in 、in (判断某个单词里是不是有某个字母)
成员运算符用来判断一个元素是否是另一个元素的成员。 比如说我们可以判断 “hello” 中是否有 “h”, 得到的结果也是True 或者 False。
>>> "h" in "hello" # 这里的意思是 “h” 在“Hello” 中,判断后结果为True
True
>>> "h" not in "hello" # 这里的意思是 “h” 不在“Hello” 中,判断后结果为False
False
运算符 | 描述 |
** | 指数 (最高优先级) |
~ + - | 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 'AND' |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not or and | 逻辑运算符 |