本篇介绍python的运算符。
运算符分为多种,最常使用的算术运算符、比较运算符、逻辑运算符,除此之外,还有位运算符、成员运算符等,这些只做简单介绍。
1. 算术运算符
用于数字的加减乘除取余取模等操作,具体如下:
+ | 相加 |
- | 相减 |
* | 相乘 |
/ | 相除 |
** | 幂运算 |
// | 地板除,即相除的结果仅保留整数 |
% | 取模,即相除后的余数 |
2. 比较运算符
== | 判断左右两个对象是否相等 |
!= | 判断左右两个对象是否不想等 |
> | 判断左对象是否大于右对象 |
< | 判断左对象是否小于右对象 |
>= | 判断左对象是否大于或等于右对象 |
<= | 判断左对象是否小于或等于右对象 |
比较运算符的特点是,如果判断的结果为真,则结果为True,否则得到False。因此,比较运算符常用于条件语句中。
例如:
# region 比较运算符用于条件语句
a = 10
b = 10
c = 20
if a == b:
print('a is equal to b')
if a > c:
print('c is smaller')
else:
print('a is smaller')
# endregion
3. 逻辑运算符
and | 逻辑“与” |
or | 逻辑“或” |
not | 逻辑“非” |
逻辑“与”、“或”、“非”的真值表
值1 | 值2 | 与 | 或 | 异或 | 非(对值1) |
1 | 1 | 1 | 1 | 0 | 0 |
1 | 0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 1 | 1 |
0 | 0 | 0 | 0 | 0 | 1 |
在python中,“与”、“或”、“非”可以组合使用,也可以用括号表示优先顺序,例如:
# region 逻辑运算符的组合使用
a = 10
b = 10
c = 20
d = 5
# 先计算括号里的,再从左到右,输出为True
if a == b and (a > c or a > d):
print('True!')
# endregion
4. 位运算符
& | 按位与 |
| | 按位或 |
~ | 按位非 |
^ | 按位异或 |
>> | 按位右移 |
<< | 按位左移 |
位运算符的与或非与逻辑运算符真值表是相同的,只不过逻辑运算符只是对布尔值进行运算,而位运算符需要转化为二进制数,在每一位上进行逻辑运算。
关于异或:其真值表在两边不同是取True,相同时取False
左移和右移的符号辨别
不要按大于号小于号去记忆,直接看箭头方向,指向左边为左移,指向右边为右移。
下面给出一个例子:
在pycharm中编写相应的程序:
# region 按位与、按位或操作
num_1 = 7
num_2 = 11
num_3 = num_1 & num_2
num_4 = num_1 | num_2
print('num_3 =', num_3, 'num_4 =', num_4) # 输出num_3 = 3, num_4 = 15
# endregion
5. 成员运算符
即 in以及not in,之前讲常用数据结构中的序列时已多次提到,用来判断某个元素是否在序列中,对于in而言,在序列中返回True,不在返回false,not in正好相反。关于举例可看链接,此处不再赘述。