Python 基本运算符
Python 基本运算符
Python支持以下类型的运算符:
- 算术运算符
- 比较运算符
- 赋值运算符
- 逻辑运算符
- 成员运算符
- 身份运算符
- 运算符优先级
算术运算符
运算符 | 例子 |
---|---|
+ 相加 | 1+1 |
- 相减 | 2-1 |
* 乘 | 2*2 |
/ 除 | 4/2 |
% 取余 | 5/2 结果位1 |
** 幂运算(几次方) | 2**2 结果位4 |
// 取整 | 5//2 结果位2 |
比较运算符
运算符 | 例子 |
---|---|
== 等于 | 1==2 结果False |
!= 不等于 | 1!=2 结果True |
> 大于 | 1>2 结果False |
< 小于 | 1<2 结果True |
>= 大于等于 | 1>=2 结果False |
<= 小于等于 | 1<=2 结果位True |
赋值运算
运算符 | 例子 |
---|---|
= 赋值 | n=1 |
+= 加法赋值 | n=n+1 / n+=1 |
-= 减法赋值 | n=n-1 / n-=1 |
*= 乘法赋值 | n = n*2 / n *=2 |
/= 除法赋值 | n = n/2 / n /=2 |
x = y = z 链式赋值 | x = y = z =1 |
x=y , y=x 交叉赋值 | x=1,y=2 x=y,y=x #x,y值互换 |
比较特殊的有解压赋值
解压赋值
list0 = [1, 2, 3, 4, 5]
list1 = list0[0]
list2 = list0[1]
list3 = list0[2]
list4 = list0[3]
list5 = list0[4]
print(list5,list4,list3,list2,list1,list0)
#这样就会写很多代码,用解压赋值一行解决
list1,list2,list3,list4,list5 = list0
print(list5,list4,list3,list2,list1)
#结果一样:
5 4 3 2 1
5 4 3 2 1
逻辑运算符
结果只有True和false,0为False,1为True
and满足条件必须都True才为True,否则位False
or满足条件只有一个True就可以,都为False才为False
not取反,True变False,False变True
运算符 | 例子 |
---|---|
and 与 | (1>2)andTrue 返回False |
or 或 | (1> 2)or True 返回True |
not 非 | not(True) 返回False |
- 优先级not>and>or
成员运算符
运算符 | 例子 |
---|---|
in 一个对象包含另外一个对象就返回True | ‘a’ in ’abc’ 返回True |
not in 一个对象不包含另外一个对象就返回True | ‘a’ not in ‘bdefg’ 返回False |
身份运算符
运算符 | 例子 |
---|---|
is is比较的是id,两个对象id相同返回True | a=b=1 print(id(a),id(b),a is b) |
is not 两个对象id不同返回True | a,b=1,2 print(id(a),id(b),a is not b) |
is 和 == 的区别!!!!
is:检查两个变量是否指向同一个内存中!
==:比较两个对象的值!
运算符优先级
可以简单理解为哪个先计算,类比小学数学运算先后
运算符 | 描述 |
---|---|
** | 指数 (最高优先级) |
~ + - | 按位翻转, 一元加号和减号 |
* / % // | 乘,除,求余数和取整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 'AND' |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
== != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not and or | 逻辑运算符 |