Python3【基础】-表达式与运算符
一、什么是表达式?
1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1、2、3叫做操作数。1+2*3计算的结果是7,计算结果可以存到一个变量中,即:res = 1 + 2 * 3。
所谓的表达式就是:由操作数和运算符组成的一句代码或语句,表达式可以求值,可以放在“=”号右边,用来给变量赋值。
二、算术运算符
所谓的算术运算符是指: + - * / //(取整数) %(取余) **(指数运算)等。
1 >>> num = 2 2 >>> num += 1 # 等价于 num = num + 1 3 >>> num -= 1 # 等价于 num = num - 1 4 >>> num *= 1 # 等价于 num = num * 1 5 >>> num /= 1 # 等价于 num = num / 1 6 >>> num //= 1 # 等价于 num = num // 1 7 >>> num %= 1 # 等价于 num = num % 1 8 >>> num **= 2 # 等价于 num = num ** 2
着重要注意的是/和//的区别,前者是我们理解中的“正常除”,而后者则是取整除,如下:
1 >>> 4/3 2 1.3333333333333333 3 >>> 4//3 4 1
三、比较运算符
所谓的比较运算符是指用于数值比较的运算符,运算的结果有两种:True和False(真和假)。
比较运算符有以下几种:> < >= <= == !=
1 >>> a = 5 2 >>> b = 3 3 >>> a > b # 检查左操作数的值是否大于右操作数的值,如果是,则条件成立。 4 True 5 >>> a < b # 检查左操作数的值是否小于右操作数的值,如果是,则条件成立。 6 False 7 >>> a <= b # 检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。 8 False 9 >>> a >= b # 检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。 10 True 11 >>> a == b # 检查,两个操作数的值是否相等,如果是则条件变为真。 12 False 13 >>> a != b # 检查两个操作数的值是否相等,如果值不相等,则条件变为真。 14 True
四、逻辑运算符
not and or
逻辑运算符是用来做逻辑运算的,逻辑运算符的操作数就是用来做条件判断的表达式或变量。
1 not and or 2 逻辑运算符是用来做逻辑计算的,逻辑运算符的操作数就是用来一个用来做条件判断的表达式或者变量。 3 ``` 4 >>> a > b and a < b # 如果两个操作数都是True,那么结果为True,否则结果为False。 5 False 6 >>> a > b or a < b # 如果有两个操作数至少有一个为True, 那么条件变为True,否则为False。 7 True 8 >>> not a > b # 反转操作的状态,操作数为True,则结果为False,反之则为True 9 False
注意,逻辑运算符中有一个很重要的原则:短路原则。
五、身份运算符
is、is not
身份运算符是用来判断身份的,一般用来判断变量的数据类型
1 >>> a = 123456 2 >>> b = a 3 >>> b is a #判断 a 和 b 是不是同一个 123456 4 True 5 >>> c = 123456 6 >>> c is a #判断 c 和 a 是不是同一个 123456 7 False 8 >>> c is not a #判断 c 和 a 是不是不是同一个 123456 9 True
六、位运算符
我们平时用到的数字在计算机中是以二进制表示的,这个二进制数叫做机器数。机器数是带符号的,在计算机用一个数的最高位存放符号,正数为0,负数为1。
- & 按位与
- | 按位或
- ^按位异或
- ~按位取反
- << 左移动运算符:运算数的各二进位全部左移若干位,由<<右边的数指定移动的位数,高位丢弃,低位补0
- >> 右移动运算符:规则同左移动 运算符
位运算符一般用于二进制操作,一般用于底层,Python很少用。