还有两个算术操作符要告诉你,程序中需要的99%的操作符就是这两个操作符再加上前面刚讲的4个基本操作符。
1、指数–自乘为一个幂
如果把3乘5次,可以写成
>>> print 3*3*3*3*3
243
不过,这就等同于35,或者“3的指数为5”,也就是“3的5次幂”。Python用一个双星号表示指数或者将一个数自乘为一个幂。
>>> print3**5
243
之所以使用指数而不是直接做多次乘法,这是因为键入时会更容易一些,不过更重要的原因是,利用**还可以用非整数作为指数,如下:
>>> print3**5.5
420.888346239
要想利用乘法来做到这一点可不容易。
2、取余–求余数
在Python中第一次尝试除法时,我们已经看到,如果将两个整数相除,Python会给你一个整数答案,也就是说,它在完成整数除法。不过,在整数除法中,答案实际上有两部分。
还记得刚开始学除法吗?如果两个数不能整除,最后会得到一个余数(remainder):7/2=3,余数是1
7/2的答案中有一个商(quotient),在这里就是3,还有一个余数(remainder),这里的余数是1.如果在Python中将两个整数相除,它会给你商。不过余数呢?
Python还有一个特殊的操作符来计算整数相除的余数,这称为取余(modulus)操作符,这个符号是百分号(%)。可以像这样使用:
>>> print7%2
1
所以如果同时使用/和%,就可以得到整数相除的完整答案。
>>> print7/2
3
>>> print7%2
1
可以看到,7除以2得3,余数是1,如果做浮点数除法,会得到小数答案:
>>> print7.0/2
3.5
实际上,既然你提到了这一点,应该说操作符和操作员确实很接近……,就像老式电话接线员连接电话一样,算术操作符按同样的方式把数字连接在一起。
我想告诉你的还有另外两个操作符,我知道,我刚才已经说过只再讲丙睂,不过别担心,这两个操作符非常容易!
3、自增和自减
还记得上一章中的例子:score=score+1吗?我们说过,这称为自增(incrementing)。与它类似的是score=score-1,这称为自减(decrementing)。这些运算在编程中经常出现,因此有自己专门的操作符:+=(自增)和-=(自减)
可以像这样使用:
>> number = 7
>> number += 1
>> print number
8
或者
>> number = 7
>> number -= 1
>> print number
6
其中第一个例子将number增1(这会从7变成8).第二个例子将number减去1(从7变成6)。