算术操作符在个种编程语言中都有,python也不例外,它的算术操作符大部分和其他编程语言一样的用法,加减乘除都差不多,但是 / 也就是除法的操作符有点不一样,这样的单斜杠在Python 3以前都是地板(floor)除法,也就是将小数部分去掉只留下整数部分,举个例子,5/2在C或者Python 3以前结果都是2也就是地板除法的结果将小数部分抹去了,但是Python 3以后都是直接连小数部分在内的得数也就是浮点类型的数作为结果,不在作地板除法,所以Python里面还有 // 也就是双斜杠,他的作用就是作所谓的floor除法。当然有除法就会有取余数的运算,%就是取余数的操作符,这根C或者很多其他的编程语言一样,就不多说了。还有就是 **两个这个符号一起的操作符叫做幂运算,也就是质数运算符,举个例子5**2的结果就是25,非常好理解。
当然,既然有运算就有优先级的说法。先来说一下加减乘除的优先级,这个适合我们的运算顺序一样的,先乘除,再加减,有括号先算括号里面的,这就非常好理解了。幂运算操作符的优先级比其左侧高,比其右侧低,举个例子,-3**2的结果是-9,也就是按-(3**2)的顺序来算的,而3**-2的结果是8.1111111111111111,按3**(-2)的顺序来运算的,幂运算操作符的优先级可见一斑。
最后再总结一下优先级的问题,幂运算>正负号>算数操作福>比较操作符>逻辑运算符,值得一提的是幂运算有它的特殊性也就是前面说的比左侧高比右侧低,逻辑运算符中not>and>or。
就从这些都可以看出Python是一直在优化的,一直都向更加完美的方向改进。这也算是我学习Python的重要原因之一吧。