常用运算符包括
1.算术运算符
2.赋值运算符
3.比较运算符
4.布尔运算符
5.位运算符
接下来的章节将会对这些运算符逐个讲解
算术运算符分为
(1)标准算数运算符
(2)取余运算符
(3)幂运算符
标准算数运算符
加+ 减- 乘* 除/ 整除//
取余运算符%
幂运算符**
这边的标准算数运算符里面的除法更加符合平常的认知/就是除法,而//才是整除,这边是需要和C语言整数除法进行区别的地方
print(1/2)//output:0.5
print(1//2)//output:0 就是取整
注意这两者之间的区别
取余运算(取模运算)
print(11%2)//output:1
注意python更有一丝的地方
from decimal import Decimal
print(Decimal('2.1')%Decimal('2'))
print(Decimal('2')%Decimal('1.1'))
//output:
0.1
0.9
在python中支持浮点数取余,其中的逻辑大致如下
n%m,其中n,m可以是浮点数或者整数
|k|*|m|<=|n|(1)
那么最后的结果就是sign(n)*(|n|-|km|),此时k的取值为满足(1)式中的最大的k值
这边的逻辑不能完美自洽,前面所说的这套逻辑的使用范围是C++中的取余运算遵循的规则
接下来是更加精确的底层逻辑,通过[m/n]获得整出后的结果
那么我们直到被除数=除数商+余数
m%n = m-n*[m/n]
print(2**3)//output:8
上面是幂运算符
这边注意如果想要通过幂运算符来获得平方根,是不行的,此时python编译器会认为代码中的*是多打的,将幂运算降级为乘法运算
print(2**1/2)//output:1.0
整除同时也可以有浮点数存在,只是这时候的答案是以浮点数的形式输出
笔者也没有发现什么特别好的方法,也就是说整数的整除如果是一正一负的时候,那么整除出来的结果毋庸置疑肯定也是负数,那么此时该负数时向下取整,即[x],而如果符号相同的话,我们会发现它仍然也是向下取整,所以很明显整除地运算逻辑为
[m/n],注意这边的m/n的含义是m除以n的值