版权声明:本文为博主原创文章,转载请标明出处 https://blog.csdn.net/qq_30993595/article/details/83048839
表达式
表达式就是由变量,运算符,数字,数字分组符号等以能求得数值的有意义的排列方法所得的组合
运算分类
- 算术运算
- 比较运算/关系运算
- 赋值运算
- 逻辑运算
- 位运算
- 成员运算
- 身份运算
算术运算
- ‘+’ 加法运算
- ‘-’ 减法运算
- ‘*’ 乘法运算
- ‘/’ 除法运算
- ‘%’ 取余运算
- ’//‘ 取商运算/地板除
- ‘**’ 幂运算
注意:python没有java的++ 和 – 运算
比较运算
- 等于运算:==
- 不等于运算:!=
- 大于运算:>
- 小于运算:<
- 大于等于运算:>=
- 小于等于运算:<=
注意:python中没有 ! 运算符
赋值运算
- 普通赋值: =
- 加法赋值: +=
- 减法赋值: -=
- 乘法赋值: *=
- 除法赋值: /=
- 取余赋值: %=
- 取商赋值://=
- 幂赋值: **=
注意:赋值运算都是先计算=号前面的运算再进行=号赋值
逻辑运算
- 与运算 and ,即运算符两边有一个条件为假即条件不成立
- 或运算 or,即运算符两边有一个条件为真即条件成立
- 非运算 not,即条件取反
注意:python中的逻辑运算与Java中(&& || !)不同,它比较符合人类思维
位运算
- 按位与运算:& ,即将数据转化为2进制数据,然后进行每个位上的逻辑与运算(两个操作数中位都为1,结果才为1,否则结果为0)
- 按位或运算:| ,即将数据转化为2进制数据,然后进行每个位上的逻辑或运算(两个位只要有一个为1,那么结果就是1,否则就为0)
- 按位非运算:~ ,即将数据转化为2进制数据,然后进行每个位上的逻辑非运算(如果位为0,结果是1,如果位为1,结果是0)
- 按位抑或运算:^ ,即将数据转化为2进制数据,然后进行每个位上的逻辑抑或运算(两个操作数的位中,相同则结果为0,不同则结果为1)
- 左移运算:<< , 即将数据转化为二进制之后,将所有数据向左移动指定的位数(左移N位相当于乘以2的N次方,此方法速度远高于乘法)
- 右移运算:>> , 即将数据转化为二进制之后,将二进制数据的所有数据向右移动指定的位数,如果数据移除右侧边界,则会被删除;实际上相当于采用了地板除(右移N位相当于除以2的N次方,舍弃小数部分。此方法速度远高于除法)
成员运算
- 检测一个值是否在指定的序列里面:in,格式: 值 in 可迭代序列
- 检测一个值是否不在指定序列里面:not in,格式:值 not in 可迭代序列
身份运算
- 检测值1是否和值2在内存中是同一个值,类似id()功能:is
- 检测值1是不是和值2在内存中是否不是同一个值,类似id()功能:is not
检测数据归属
- type()函数在测试时可以使用,开发尽量避免使用
- isinstance()函数检测一个数据是否由指定的类型创建