地三鲜
土豆+茄子+青椒=地三鲜
这就是一个表达式,表达式是由运算符和操作数组成的。
土豆、茄子和青椒是操作数,炒是运算符,而地三鲜就是最后结果也就是这个表达式的值。
表达式
一个表达式可以分解为运算符和操作数。
运算符
小测试:你可以直接在命令行中输入表达式。
运算符和他们的用法
运算符包含算术运算符、逻辑运算符和位运算符
运算符 | 名称 | 说明 | 例子 |
+ | 加 | 两个对象相加 | 1+2=3 'a'+'b'='ab' |
- | 减 | 得到复数或一个数减去另一个数 | -5.2 3-1=2 |
* | 乘 | 两个数相乘或返回一个被重复的字符串 | 2*2=4 'a'*3='aaa' |
** | 幂 | 返回x的y次幂 | 3**4=81(3*3*3*3) |
/ | 除 | x除以y | 4/2=2.0 4/3=1.333333333 |
// | 取整数 | 得到商的整数 | 4//3.0=1.0 |
% | 取模 | 返回除法的余数 | 8%3=2 -25.5%2.25=-11.333333333333334 |
<< | 左移 | 二进制左移x位 | 2<<2=8 |
>> | 右移 | 二进制右移x位 | 11>>1=5 |
& | 按位与 | 数的按位与 | 5 & 3= 1 |
| | 按位或 | 数的按位或 | 5 | 3=7 |
^ | 按位异或 |
数的按位异或 |
5^3=6 |
~ | 按位翻转 | x的按位反转是-(x+1) | ~5=-6 |
< | 小于 | 返回x是否小于y (False)(True) | 5<3=False |
> | 大于 | 返回x是否大于y | 5>3=True |
<= | 小于等于 | 返回x是否小于等于y | x = 3; y = 6; x <= y=True。 |
>= | 大于等于 | 返回x是否大于等于y | x = 4; y = 3; x >= y返回True。 |
== | 等于 | 比较对象是否相等 | x = 2; y = 2; x == y返回True。x = 'str'; y = 'stR'; x == y返回False。x = 'str'; y = 'str'; x == y返回True。 |
!= | 不等于 | 比较两个对象是否不相等 | x = 2; y = 3; x != y返回True。 |
not | 布尔“非” | 如果x为True,返回False。如果x为False,它返回True。 | x = True; not y返回False。 |
and | 布尔“与” | 如果x为False,x and y返回False,否则它返回y的计算值。 | x = False; y = True; x and y,由于x是False,返回False。在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算。 |
or | 布尔“或” | 如果x是True,它返回True,否则它返回y的计算值。 | x = True; y = False; x or y返回True。短路计算在这里也适用。 |
使用代码进行练习
>>> 1+2 3 >>> 'a'+'b' 'ab' >>> -5.2 -5.2 >>> 3-1 2 >>> 2*2 4 >>> 'a'*3 'aaa' >>> 3**4 81 >>> 4/2 2.0 >>> 4/3 1.3333333333333333 >>> 4//3 1 >>> 4//3.0 1.0 >>> 8%3 2 >>> -25.5/2.25 -11.333333333333334 >>> 2<<2 8 >>> 11>>1 5 >>> 5&3 1 >>> 5|3 7 >>> 5^3 6 >>> ~5 -6 >>> 5<3 False >>> 5>3 True >>> 3<=6 True >>> 4>=3 True >>> 2==2 True >>> 'str'=='stR' False >>> 'str'=='str' True >>> 2!=3 True >>> x=True; not x False >>> x = False; y = True; x and y False >>> x = True; y = False; x or y True
这其中涉及到二进制的运算,有兴趣的大佬可以去看看,不是很难,很好理解。