| 运算符 | 描述 | 实例 |
|---|---|---|
| + | 加 - 两个对象相加 | 10 + 20 输出结果 30 |
| - | 减 - 得到负数或是一个数减去另一个数 | 20 - 10 输出结果 -10 |
| * | 乘 - 两个数相乘或是返回一个被重复若干次的字符串 | 20 * 10 输出结果 200 |
| / | 除 - x除以y | 6/ 3 输出结果 2 |
| % | 取模 - 返回除法的余数 | 10 % 2 输出结果 0 |
| ** | 幂 - 返回x的y次幂 | 10 ** 20 为10的20次方, 输出结果 100000000000000000000 |
| // | 取整除 - 返回商的整数部分 | 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
python 中算术运算符一般用作算数运算, 常用的有: + - * / % **
In [9]: 1 + 2
Out[9]: 3
In [10]: 1 - 2
Out[10]: -1
In [11]: 4 * 3
Out[11]: 12
In [12]: 5 /3
Out[12]: 1.6666666666666667
In [14]: 5 // 3 # 在 python 3中 // 代表整除
Out[14]: 1
In [18]: 5 % 3 #取模
Out[18]: 2
In [19]: 5 ** 2 #求次方
Out[19]: 25在 python 2 中, / 代表整除, 如需要获取精确值, 需要将任意一个运算数字转换成 float 类型
# in python2
In [1]: 5 / 3
Out[1]: 1
In [2]: 5 / float(3)
Out[2]: 1.6666666666666667
In [3]: float(5) / 3
Out[3]: 1.6666666666666667python 中比较运算符一般用于数值之间的比较, 返回一个 boolean 类型的值
| 运算符 | 描述 | 实例 |
|---|---|---|
| == | 等于 - 比较对象是否相等 | (a == b) 返回 False |
| != | 不等于 - 比较两个对象是否不相等 | (a != b) 返回 true. |
| <> | 不等于 - 比较两个对象是否不相等, #python 3 取消 |
(a <> b) 返回 true。这个运算符类似 != |
| > | 大于 - 返回x是否大于y | (a > b) 返回 False |
| < | 小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写 | (a < b) 返回 true |
| >= | 大于等于 - 返回x是否大于等于y。 | (a >= b) 返回 False |
| <= | 小于等于 - 返回x是否小于等于y。 | (a <= b) 返回 true |
In [21]: 5 == 5
Out[21]: True
In [22]: 4 != 5
Out[22]: True
In [24]: 5 > 3
Out[24]: True
In [25]: 5 < 3
Out[25]: False
In [26]: 5 >= 3
Out[26]: True
In [27]: 5 <= 3
Out[27]: False不做介绍
python 支持逻辑运算符, 如果 a 为 10, b为 20:
| 运算符 | 逻辑表达式 | 描述 | 实例 |
|---|---|---|---|
| and | x and y | 布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。 | (a and b) 返回 20。 |
| or | x or y | 布尔"或" - 如果 x 是非 0,它返回 x 的值,否则它返回 y 的计算值。 | (a or b) 返回 10。 |
| not | not x | 布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。 | not(a and b) 返回 False |
In [3]: a > b and True
Out[3]: True
In [4]: a > b or True
Out[4]: True
In [5]: not a > b
Out[5]: False
In [6]: True or a > b
Out[6]: True
In [7]: a > b or False
Out[7]: True
In [8]: a > b and False
Out[8]: False
In [9]: a < b and True
Out[9]: False一般情况下, python 使用短路运算, 简单了来说就是 python 解释器如果发现 or 的左边是 True 或者 and 的左边是 False, 就不在执行右边的代码 (不够精确, 请见谅)
In [33]: False and print('a')
Out[33]: False
In [34]: True or print('a')
Out[34]: Truepython 也支持以下的赋值运算符, 以下假设变量a为10,变量b为20:
| 运算符 | 描述 | 实例 |
|---|---|---|
| = | 简单的赋值运算符 | c = a + b 将 a + b 的运算结果赋值为 c |
| += | 加法赋值运算符 | c += a 等效于 c = c + a |
| -= | 减法赋值运算符 | c -= a 等效于 c = c - a |
| *= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
| /= | 除法赋值运算符 | c /= a 等效于 c = c / a |
| %= | 取模赋值运算符 | c %= a 等效于 c = c % a |
| **= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
| //= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
In [35]: a = 'test'
In [36]: c = 1
In [37]: c += 1
In [38]: c
Out[38]: 2
In [39]: c2 = 2
In [40]: c2 -= 1
In [41]: c2
Out[41]: 1python 还支持成员运算符, 测试实例中包含了一系列的成员,包括字符串,列表或元组。
| 运算符 | 描述 | 实例 |
|---|---|---|
| in | 如果在指定的序列中找到值返回 True,否则返回 False。 | x 在 y 序列中 , 如果 x 在 y 序列中返回 True。 |
| not in | 如果在指定的序列中没有找到值返回 True,否则返回 False。 | x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。 |
In [43]: 1 in lst
Out[43]: True
In [44]: 5 in lst
Out[44]: False
In [45]: 1 not in lst
Out[45]: False
In [46]: 5 not in lst
Out[46]: True