Python语言支持以下类型的运算符
- 算术运算符
- 比较运算符
- 赋值运算符
- 逻辑运算符
- 位运算符
- 成员运算符(in / not in)
- 身份运算符(is / is not)
Python算术运算符
运算符 |
描述 |
实例 |
+ |
加法——两个对象相加 |
10+20=30 "hello"+"python"="hellopython" |
- |
减法——得到负数或是一个数减去另一个数 |
10-20=-10 |
* |
乘法——两个数相乘或是返回一个被重复若干次的字符串 |
10*20=200 |
/ |
除法——两个数相除 |
10/20=0.5 |
% |
取模——返回除法的余数,即求余。 |
5%2=1 3.25%1.5=0.25 5%2.0=1.0 |
// |
取整除——返回商的整数部分(向下取整) |
5//2=2 3.25//1.5 = 2.0 5//2.0=2.0 -5//2=-3 |
** |
幂运算——返回x的y次幂。 |
a**b:a的b次方,即ab。2**3=8 3.0**2.0=9.0 (1+2j)**2=(-3+4j) |
Python比较运算符
Python赋值运算符
Python逻辑运算符
注:x,y代表表达式。 not x:相当于not bool(x)。 x or y:等同于:x if bool(x) == True else y。and:优先返回假值对象,or:优先返回真值对象。
运算符 |
逻辑表达式 |
描述 |
and |
x and y |
布尔"与"——当x的布尔值为False时,x and y 返回x的值,否则返回y的值 |
or |
x or y |
布尔"或"——当x的布尔值为True 时,x or y 返回x的值,否则返回y的值 |
not |
not x |
布尔"非"——当x的布尔值为False时,not x 返回True,值为True,返回 False |
a, b = 5, 10
print a and b # 10
print a or b # 5
print not a # False
a, b = 0, 10
print a and b # 0
print a or b # 10
print not a # True
# a and b:先看bool(a)的值,如果值为False,返回 a 的值,否则返回 b 的值。
# a or b: 先看bool(a)的值,如果值为True,返回 a 的值,否则返回 b 的值。
# not a: 先看bool(a)的值,如果值为True,返回 False,否则返回 True。
Python位运算符
Python成员运算符
Python身份运算符
Python运算符优先级
运算符 |
描述 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
is is not |
身份运算符 |
in not in |
成员运算符 |
not and or |
逻辑运算符,优先级顺序为:NOT > AND > OR |
https://www.runoob.com/python/python-operators.html