运算符
运算符 就是使用对应的符号 让数据之间完成对应的运算
根据作用 可以分为算术运算符 、比较运算符 、赋值运算符、逻辑运算符
运算符的优先级别:算术运算符 > 比较运算符 > 高于逻辑运算符 > 高于赋值运算符
一、算数运算符
运算符根据参与运算数据的个数呢 又分为一元运算符 二元运算符 三元运算符**[Python中没有]**
算术运算符:
- 一元运算符就是 正负号 + 还有 -, 只不过一般写数据的时候+是忽略的 可以不写的
- 二元运算符
二元运算符 | 解释 |
---|---|
+ | 两个数据相加求和 |
— | 两个数据相减求差 |
* | 两个数据相乘求积 |
/ | 两个数据相除求商 这个结果是浮点类型的 除不尽会有小数 |
// | 两个数据相除求商 结果是整数类型的 对商做了进一步的操作:向下取整 |
% | 两个数据相除之后获取余数 |
** | 求两个数的幂数 前者为底数 后者为指数 |
二元运算符
比如 3.14 === 向下取整就是3
4.0 ==== 向下取整就是4
-2.7 === 向下取整就是-3
举例
10//4=2
取余数 % 两个数据相除之后获取余数
11除以4 商2余3
11%4 = 3
幂数 ** 求两个数的幂数 前者为底数 后者为指数
x**y ==== x的y次方
比如3**2 ==== 3的平方 === 9
10**(-3) ==== 10的-3次方 ==== 千分之一 ==== 0.001
y还可以为分数 1/n 达到开方的效果
27**(1/3) ====> 对27开3次方 ==== 3.0
负数次方或者1/n 结果是浮点类型的
算术运算符之间的优先级别
- ** 高于 正负号 高于 *、/、//、% 高于 加减
- 编程语言中提高表达式的优先级 使用的都是 ()
二、比较运算符
这一类是二元运算符,对比两个数据之间的关系,相应的关系有:
运算符 | 解释 |
---|---|
> | 判断前者是否大于后者 |
>= | 判断前者是否大于或者等于后者 |
< | 判断前者是否是小于后者 |
<= | 判断前者是否小于或者等于后者 |
== | 判断两者是否相等的 |
!= | 判断两者是否 不相等 |
这类运算符的运算结果是布尔类型的 只有两个值True或者False
print(17 > 21)
print(21 >= 17)
print(17 < 21)
print(17 <= 21)
print(17 == 21)
print(17 != 21)
三、赋值运算符
赋值运算符的目的是将数据值赋值给变量
有两种:
- 简单赋值运算符
变量=数据值 把等号右边的数据赋值给等号左边的变量 - 复合赋值运算符
再赋值之前进行了相应的算术运算 【结合了算术运算的赋值运算符】 变量+=数据表达式
赋值运算符 |
---|
+= |
-= |
*= |
/= |
//= |
%= |
**= |
这个运算符在使用的时候 变量必须提前定义出来 有一个初始值 然后再对变量先进行相应的算术运算 把运算结果赋值给变量
运行顺序:
1. 先运行等号右边的数据表达式
2. 再运算算术运算符
3. 运行的是赋值运算符 【赋值=运算符的优先级别是最低的】
示例
num = 15
num %= num - 10
print(num) # 0
# num-10 ===> 5 2. num % 5 ===> 0 3. num=0 =====> num = num % (num - 10)
num1 = 21
num1 *= num1 // 7
print(num1)
# 1. num1 // 7 ====> 3 2. num1 * 3 = 63 3. num1 = 63 ======> num1 = num1 * (numsi1 // 7)
四、逻辑运算符
逻辑运算符:连接两个表达式的逻辑关系的
内部有优先级别的 : not > and > or
这个逻辑关系是有3种的
-
逻辑与(并且) and
连接的表达式之间必须得同时成立结果才是成立 True and True = True False and True = False True and False = False False and False = False -
逻辑或(或者) or
连接的表达式之间有一个是成立的,结果就是成立的连接的表达式之间有一个是成立的,结果就是成立的 True or True = True True or False = True False or True = True False or False = False -
逻辑非(对逻辑结果进行取反的) not
连接的表达式之间有一个是成立的,结果就是成立的 not True = False not False = True