跳到主要内容

1.3 算术运算

运算符(operator): 表示简单计算的符号, 例如加法、乘法.

Python语言支持很多种运算符,我们先来了解术运算符。

运算符 +, -, */ 可被用来执行算术运算; 圆括号 () 可被用来进行分组以提高优先级。

>>> 2 + 4
6
>>> 5 - 4
1
>>> 5 * 4 # 乘法
20
>>> 10 / 2 # 除法
5.0 # 除法总会返回小数(浮点数)
>>> 10 - (1 + 2)
7

算术运算符除了比较熟悉的加、减、乘、除运算符外,还有取余、幂运算、整除,如下表:

运算符描述实例
+加法运算2 + 4 结果为 6
-减法运算5 - 4 结果为 1
*乘法运算5 * 4 结果为 20
/除法运算5 / 4 结果为 1.25
%取余运算,返回除法的余数5 % 4 结果为 1
**幂运算,(n次方)3 ** 4, 3的4次方,结果为 81
//整除运算,只取整数5 // 4 结果是 1
>>> 8 % 3 # 8 - 3 * 2
2
>>> 75 % 7 # 75 - 7 * 10
5
>>> 5 ** 2 # 5的2次方
25
>>> 3 ** 4 # 3的4次方
81
>>> 5 // 4 # 5整除2
1
>>> 5.2 // 2
2.0 # 除数或被除数有小数,结果类型为小数,只取整数结果

算数运算符优先级

当表达式含有多个运算符时, 执行顺序主要基于运算次序. 对于数学运算符, Python 遵循数学惯例,优先级为:

括号 > 幂运算 > = = 整除= 取余 > =

>>> (1 + 2) ** 2 # 括号优先于幂运算
9
>>> 3 * 2 ** 3 # 幂运算优先于乘法
24
>>> 2 * 3 + 15 % 8 # 乘、取余优先于加
13 # 6 + 7

字符串的算数运算

字符串也支持加和乘的算数运算,不过跟数学的算数运算有所不同,字符串相加是连接字符串,字符串乘于整数n是字符串重复n次。

>>> 'Hello' + 'World'
HelloWorld
>>> 1 + 2
3
>>> '1' + '2' # 字符串加法运算
'12'
>>> 'hi' * 3
'hihihi'
>>> 12 * 3
36
>>> '12' * 3 # 字符串乘法运算
'121212'