python中算术运算符优先级_P005 Python基础:运算符之算术运算符优先级02

先括号,再乘除,后加减,这是最基本的优先级规则。上一篇提到多了幂,取模和取整,优先级仍然是高于加减,变成幂乘除取模取整后加减:**,* / % //,+-。写在前面的是等级最高的,注意中间的逗号隔开,表示不同的级别,同一级别的运算符优先级规则是谁先则先算谁。

下面来验证规则

"""

算术运算符优先级

"""#验证**最高等级计算t=37%10//5*3/2*10**2#输出150.0print(t)#参考上面验证同级别运算符的优先级t2=37*10/5//3%2*10**2#输出0.0: 37*10=370/5=74.0//3=34.0%2=0.0*100=0.0print(t2)#把加减法加进来验证t3=10*2+12/5-20+31//2-23%4#第一次计算后:20 + 2.4-20 + 15-3=14.4print(t3)

但运行之后,t3的结果还是有点意外的。

单独拿出来计算12/5是=2.4的

这个问题也是第一次遇到,明明是整除,为什么会有这么多小数位呢?这个问题暂时记录吧!想到了原因再说吧!

眼睛好使的都会发现一个问题,就是结果都带小数。

主要原因Python的版本进化,除法也有了更改。进化为精确除法:无论操作数是整数还是浮点数,得到的商总是真实结果,总是得到浮点数。

基于这点,4/2=2.0就好解释了。所以,结果都是带小数的!但取模、取整就不会带有小数。大家自行验证。

那如何去除结果中的小数呢?这里先介绍两种方法:

1,向下取整int()

2,四舍五入round()

还有其它方法,收录在math模块中。将在标准库学习中再详细说明。

下篇预告:比较运算符

你可能感兴趣的:(python中算术运算符优先级)