Python运算符及优先级

本博客原文地址:https://www.cnblogs.com/BobHuang/p/15523336.html,原文体验更佳
Python语言运算符包括算术运算符、关系运算符、逻辑运算符、赋值运算符、位运算符、成员运算符和身份运算符,前四种在高中信息技术课本出现,属于必须掌握的。

一、 Python 算术运算符

运算符 表达式 描述 示例 优先级
** x**y 求x的y次幂 5**2结果为25 1
* x*y 将x与y相乘 5*2结果为10 2
/ x/y 将x除以y,结果为浮点数 5/2结果为2.5 2
// x//y 将x除以y,取整数部分 5//2结果为2 2
% x%y 将x除以y,求余数 5%2结果为1 2
+ x+y 将x与y相加 5+2结果为7 3
- x-y 将x减去y 5-2结果为3 3

注意:

  1. //为商的向下取整,5//2结果为2,5//(-2)和-5/2结果均为-3。
  2. 若无小括号,相同运算顺序为从左到右,**运算符除外。 2**3**2为\(2^{{3}^{2}}={2^9}=512\)

二、 Python 关系运算符

运算符 表达式 描述 示例 优先级
> x>y x大于y 5>2结果为True 4
< x<y x小于y 5<2结果为False 4
>= x>=y x大于等于y 5>=2结果为True 4
<= x<=y x小于等于y 5<=2结果为False 4
== x==y x等于y 5==2结果为False 4
!= x!=y x不等于y 5!=2结果为True 4
in x in y x是y的成员 "5" in "2"结果为False 5

注意:

  1. 判断相等用的是"==","="表示赋值,不是关系运算符。不等于中的不是"!"。
  2. "in""成员资格运算符用来检査一个值是否包含在指定的序列中,"w" in "rw"为True,"x" in "rw"为False,特别注意in在字典和列表的使用。

三、 Python 逻辑运算符

运算符 表达式 描述 示例 优先级
and x and y 布尔"与" True and False 结果为False 7
or x or y 布尔"或" True or False 结果为False 8
not not x 布尔"非" not False 结果为True 6

注意:

  1. and就是生活中的且,同时满足才满足。or就是生活中的或,满足其中一个即可。not就是否定,对的变错的,错的变对的。
  2. 优先级为先计算not,再计算and,最后计算or。

四、Python 赋值运算符

(expr) 表示表达式

运算符 表达式 描述 示例 优先级
= a = (expr) 简单的赋值运算符 c=a+b,表示将a+b的值赋值给c 9
  • 扩展
运算符 表达式 描述 示例 优先级
+= a += (expr) 加法赋值运算符 c += a 等效于 c = c + a 9
-= a -= (expr) 减法赋值运算符 c -= a 等效于 c = c - a 9
*= a *= (expr) 乘法赋值运算符 c *= a 等效于 c = c * a 9
/= a /= (expr) 除法赋值运算符 c /= a 等效于 c = c / a 9
//= a //= (expr) 取整除赋值运算符 c //= a 等效于 c = c // a 9
%= a %= (expr) 取模赋值运算符 c %= a 等效于 c = c %a 9
**= a **= (expr) 幂赋值运算符 c **= a 等效于 c = c ** a 9

五、练一练

  1. 123%100
  2. 14*15+1
  3. 2**3
  4. 3**2
  5. 4*2**3
  6. 123//10%10
  7. 123%100//10
  8. 4/2
  9. 5/3
  10. 3//5
  11. 5*4*2
  12. 18 / 4
  13. 18//4
  14. 18%4
  15. -18 // 4
  16. -18 % 4
  17. 18 //-4
  18. -18//-4
  19. 2**2**3
  20. (2**2)**3
  21. 2020 % 4 ==0
  22. 1231%122>0
  23. 8>= 100 and 8<=100
  24. 8>= 100 or 8<=100
  25. (1900 % 4 == 0 and 1900%100!=0) or 1900%400==0
  26. 1900 % 4 == 0 and 1900%100!=0 or 1900%400==0
  27. "bob" in "bob_teacher"
  28. "a" in "abc" or "d" in "abc"
  29. "a" in "abc" and "d" in "abc"
  30. "a" in ["a","b","c"] and "d" in ["dd","a","b"]
posted @ 2021-11-08 11:14  暴力都不会的蒟蒻  阅读(1122)  评论(0编辑  收藏  举报