python的运算符与表达式你真的了解吗

一、表达式

  • 是由一个或多个操作数通过操作符组合而成
  • 最简单的表达式仅包含一个字面值常量或变量

二、运算符

1、算术运算符

运算符 描述(变量a为10,变量b为21) 实例
+ 加:两个对象相加 a+b 输出:31
- 减:得到负数或是一个数减去另一个数 a-b 输出:-11
* 乘:两个数相乘或返回一个被重复若干次的字符串 a*b 输出:210
/ 除:x除以y b/a 输出:2.1
% 取余:返回除法的余数 b%a 输出:1
** 幂:返回x的y次幂 a**b 为10的21次方
// 取整除:向下取接近除数的整数 9//2==4;-9//2==-5

2、赋值运算符

运算符 描述 实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值给c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
%= 取模赋值运算符 c %=a 等效于 c = c % a
**= 幂赋值运算符 c ** a 等效于 c = c ** a
//= 取整除赋值运算符 c //= a 等效于 c = c // a

3、比较运算符

运算符 描述(a为10,b为20) 实例
== 等于:比较两个对象是否相等 (a==b) 返回False
!= 不等于:比较两个对象是否不相等 (a!=b) 返回True
> 大于:比较a是否大于b (a>b) 返回False
< 小于:比较a是否小于b (a
>= 大于等于:比较a是否大于等于b (a>=b) 返回False
<= 小于等于:比较a是否小于等于b (a<=b) 返回True
  • 可以多个运算符连用
  • 如:10 > x > 5
  • 等价于:x < 10 and x > 5

4、逻辑运算符

运算符 逻辑表达式 描述(x 为 10,y 为 20) 实例
and x and y 与:如果x为False,返回False,否则返回y的计算值 (x and y) 返回 20
or

x or y

或:如果x为True,返回x的值,否则返回y的计算值 (x or y) 返回 10
not not x 非:如果x为True,返回False,如果x为False,返回True not (a and b)返回False

运算:

 

若or左侧表达式为True,则短路后面所有的表达式(不管是and还是or)

若and左侧表达式为False,则短路后面所有的and表达式

5、成员关系运算

运算符 描述 实例
in 如果在指定的序列中找到值返回True,否则返回False 如果x在y序列中返回True
not in 如果在指定的序列中没有找到值返回True,否则返回False 如果x不在y序列中返回True

6、对象实例测试

运算符

描述

实例

is 是判断两个标识符是不是引用自一个对象 x is y,类似id(x) == id(y),如果引用的是同一个对象则返回True,否则返回False
is not 是判断两个标识符是不是引用自不同对象 x is not y,类似id(x) != id(y),如果引用的不是同一个对象则返回True,否则返回False

7、位运算

运算符 描述(换算成二进制计算) 实例
& 参与运算的两个值,如果两个相应位都为1,则该位结果位2,否则为0 a & b
| 只要对应的二个二进位有一个为1时,结果位就为1 a | b
^ 当两对应的二进位相异时,结果为1 a ^ b
~ 对数据的每个二进制位取反,即把1变为0,把0变为1;-x类似于 -x-1 a ~ b
<< 运算数的各二进位全部左移若干位,由“<<”右边的数指定移动的位数,高位丢弃,低位补0 a << b
>> 把“>>”左边的运算数的各二进位全部右移若干位,“>>”右边的数指定移动的位数 a >> b

8、一元运算 :

+x    ;    -x        ;~x

三、python运算符优先级 

1、运算符优先级

运算符 描述
** 指数(最高优先级)
~ + - 按位翻转,一元加号和减号
* / % // 乘、除、取余和地板除
+ - 加法减法
>> << 右移、左移运算符
& 位‘AND’
^ | 位运算符
<= < > >=

比较运算符

< > == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
and or not 逻辑运算符

2、计算顺序

  • 运算符优先级表决定了哪个运算符在别的运算符之前计算
  • 具有相同优先级的运算符按照从左往右的顺序计算
  • 改变它们的计算顺序,得使用圆括号:(2+3)*4

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

你可能感兴趣的:(python的运算符与表达式你真的了解吗)