1.运算符
+ (加):两个对象相加。
- (减):从一个数中减去另一个数,如果第一个操作数不存在,则假定为零。
* (乘):给出两个数的乘积,或返回字符串重复指定次数后的结果。'la' * 3 输出 'lalala'
** (乘方):返回 x 的 y 次方。
/ (除):e.g:13 / 3 输出 4.333333333333333
// (整除):x 除以 y 并对结果向下取整至最接近的整数。-13 // 3 输出 -5 。
% (取模):返回除法运算后的余数。
<< (左移):将数字的位向左移动指定的位数。(每个数字在内存中以二进制数表示,即 0 和1)
>> (右移):将数字的位向右移动指定的位数。
& (按位与):对数字进行按位与操作。5&3输出1.
| (按位或):对数字进行按位或操作。5 | 3 输出 7 。
^ (按位异或):对数字进行按位异或操作。5 ^ 3 输出 6 。
~ (按位取反):x 的按位取反结果为 -(x+1)。
< (小于):返回 x 是否小于 y。所有的比较运算符返回的结果均为 True 或 False 。请注意这
些名称之中的大写字母。
> (大于):返回 x 是否大于 y。例如:5 > 3 返回 True 。如果两个操作数均为数字,它们首先将会被转换至一种共同的
类型。否则,它将总是返回 False 。
<= (小于等于):返回 x 是否小于或等于 y。x = 3; y = 6; x<=y 返回 True 。
>= (大于等于):返回 x 是否大于或等于 y。x = 4; y = 3; x>=3 返回 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 是 Ture ,则返回 False 。如果 x 是 False ,则返回 True 。x = Ture; not x 返回 False 。
and (布尔“与”):如果 x 是 False ,则 x and y 返回 False ,否则返回 y 的计算值。当 x 是 False 时, x = False; y = True; x and y 将返回 False 。在这一情境中,Python 将不会计算 y,因为它已经了解 and 表达式的左侧是 False ,这意味着整个表达式都将是 False 而不会是别的值。这种情况被称作短路计算(Short-circuitEvaluation)。
or (布尔“或”):如果 x 是 True ,则返回 True ,否则它将返回 y 的计算值。x = Ture; y = False; x or y 将返回 Ture 。在这里短路计算同样适用
2.赋值快捷方式
a = 2
a = a * 3 同样可以写成
a = 2
a *= 3即 变量 = 变量 运算 表达式 会演变成 变量 运算 = 表达式 。
3.求值顺序(由低优先级至高优先级顺序)
lambda :Lambda 表达式(这个表达式还没有用过)
if - else :条件表达式
or :布尔“或”
and :布尔“与”
not x :布尔“非”
in, not in, is, is not, <, <=, >, >=, !=, == :比较,包括成员资格测试
(Membership Tests)和身份测试(Identity Tests)。
| :按位或
^ :按位异或
& :按位与
<<, >> :移动
+, - :加与减
*, /, //, % :乘、除、整除、取余
+x, -x, ~x :正、负、按位取反
** :求幂
x[index], x[index:index], x(arguments...), x.attribute :下标、切片、调用、属性引
用
(expressions...), [expressions...], {key: value...}, {expressions...} :显示绑定或数
组、显示列表、显示字典、显示设置。
可以通过加括号的形式来改变运算顺序。
4.表达式案例:
length=5
breadth=2
area=length*breadth
print('Area is',area)
print('Perimer is',2*(length+breadth))
输出:Area is 10
Perimeter is 14
工作过程:矩形的长度(Length)与宽度(Breadth)存储在以各自名称命名的变量中。我们使用它们并
借助表达式来计算矩形的面积(Area)与周长(Perimeter)。我们将表达式 length *breadth 的结果存储在变量 area 中并将其通过使用 print 函数打印出来。在第二种情况中,我们直接在 print 函数中使用了表达式 2 * (length + breadth) 的值。