提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
前言
经过上一期的学习,我们主要学习了基础语法,基本数据类型,数据类型的转换等等,在本章我们要学习的是Python运算符,而Python的算术运算符有1.算术运算符。2.比较运算符。3.赋值运算符。4.逻辑运算符。5.位运算符。6.成员运算符。7.身份运算符。
在上小学的时候,我们学习过加减乘除混合运算,在算的时候,会有一个算术的优先顺序,比如要先算小括号内的内容在算小括号外的乘除,再算加减。在我们计算机编程里面也有这样的计算优先顺序。所以就有运算符的优先级,运算的顺序不对,算出来的结果也会不同。
一、算术运算符
Python运算符通常由左向右结合,即具有相同优先级的运算符按照从左向右的顺序计算。 例如,2 + 5 + 6被计算成 (2 + 5) + 6。
例:a = 20 b = 10
运算符 | 描述 | 实例 |
+ | 加 两个对象相加 | a + b 输出 30 |
- | 减 一个数减另一个数 | a - b 输出 10 |
* | 乘 两个数相乘得到一个被重复相加无数次的字符 | a * b 输出 200 |
/ | 除 除数 除与 被除数 | a / b 输出 2.0 |
// | 整除 取商的整数部分(向下取整) | a // b 输出 2 |
% | 取余 短除法取余数 | a % b 输出 0 |
** | 幂 也就是乘方 | a ** b 输出 102400000000 科学计数法表示为:1.024e13 |
例:a = 10 b = 20
二、比较运算符
运算符 | 描述 | 实例 |
== | 等于 比较左右两边的对象是否相等 | a == b 输出 Flase |
!= | 不等于 比较两个对象是否不相等 | a != b 输出 True |
> | 大于 比较 a 是否大于 b | a > b 输出 Flase |
< | 小于 比较 a 是否小于 b | a < b 输出 True |
>= | 大于等于 比较 a 是否大于等于 b | a >= b 输出 Flase |
<= | 小于等于 比较 a 是否小于等于 b | a <= b 输出 True |
三、赋值运算符
例:a = 1 b = 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 |
四、位运算符
1.转换为二进制计算
运算符 | 描述,要先转换为二进制在进行运算,从右往左 | |
& | 按位与运算符:参与运算的两个值,转换为二进制数进行运算。运算规则:如果两个相应的位为 1 ,则该位表示为 1 ,否则为 0 | |
| | 按位或运算符:参与运算的两个值,转换为二进制数进行运算。运算规则:如果两个相应的位其中有一个为 1, 则表示为 1,反之为 0 | |
^ | 按位异或运算符:参与运算的两个值,转换为二进制数进行运算。运算规则:如果两个相应位的数不同时则为 1, 反之为 0 | |
~ | 按位取反运算符:把数据转换为二进制数进行运算。运算规则:二进制的值取反,即 1 变 0, 0 变 1. | |
<< | 按位左移运算符:运算数的各个二进制位全部左移若干位,由<<右边的数字指定位移的位数,最高位丢弃,低位补 0 | |
>> | 按位右移运算符:把>> 左边的运算数的各个二进制位全部右移若干位,>>右边的数字指定了移动的位数 |
五、成员运算符
1.
运算符 | 描述 | 实例 |
in | 如果在指定的序列中找到值(成员)就返回 True ,否则就返回 Flase | a 在 b 序列中 如果 a 在 y 序列中就返回 True |
not in | 如果在指定的序列中没有找到值(成员),就返回 True, 否则就返回 Flase | a 不在 b 序列中 如果 a 不在 b 序列中返回 True |
六、身份运算符
运算符 | 描述 |
is | is 是判断两个标识符是否引用自一个对象 |
is not | is not 是判断两个标识符是否引用自不同对象 |
七、逻辑运算符
1.a = 10 b = 20
运算符 | 描述 |
and | 逻辑与运算符:如果 a and b , 如果 a 的值为Flase,结果则为 Flase,否则就返回 b 的计算值 |
or | 逻辑或运算符:如果 a 的值不为 0 ,它返回 a 的值,否则返回 b 的计算值 |
not | 逻辑非运算符:如果 a 为 True ,就返回 Flase,;如果 a 为 Flase ,就返回 True |
八、运算符的优先级
1.
** | 乘方(幂运算) |
+a , -a , ~a | 正,负,按位非 NOT |
* , @ , / , // , % | 乘,矩阵乘,除,整除,取余 |
+ , - | 加 减 |
<< , >> | 按位左移运算符,按位右移运算符 |
& | 按位与运算符(and) |
| | 按位或运算符(or) |
^ | 按位异或运算符(xor) |
in ,not in , is ,is not , < , <= , > , >= , != , == | 比较运算,包括成员检测和标识号检测 |
not | 逻辑非 (not) |
and | 逻辑与 (and) |
or | 逻辑或 (or) |
if...else | 条件表达式 |
lambda | lambda 表达式 |
:= | 赋值表达式 |
总结
以上就是今天的内容,喜欢别忘记点赞和加关注哦,谢谢大家,下期再见。