时间:2021-07-01 10:21:17 帮助过:108人阅读
首先Python中的运算符大部分与C语言的类似,但也有很多不同的地方。这里就大概地罗列一下Python 3中的运算符。
一、算术运算符
注意:
双斜杠 // 除法总是向下取整。
从符点数到整数的转换可能会舍入也可能截断,建议使用math.floor()和math.ceil()明确定义的转换。
Python定义pow(0, 0)和0 ** 0等于1。
二、比较运算符
运算符 | 描述 |
---|---|
< | 小于 |
<= | 小于或等于 |
> | 大于 |
>= | 大于或等于 |
== | 等于 |
!= | 不等于 |
is | 判断两个标识符是不是引用自一个对象 |
is not | 判断两个标识符是不是引用自不同对象 |
注意:
八个比较运算符优先级相同。
Python允许x < y <= z这样的链式比较,它相当于x < y and y <= z。
复数不能进行大小比较,只能比较是否相等。
三、逻辑运算符
运算符 | 描述 | 备注 |
---|---|---|
x or y | if x is false, then y, elsex | |
x andy | if x is false, then x, elsey | |
not x | if x is false, then True,elseFalse |
or是个短路运算符,它只有在第一个运算数为False时才会计算第二个运算数的值。
and也是个短路运算符,它只有在第一个运算数为True时才会计算第二个运算数的值。
not的优先级比其他类型的运算符低,所以not a == b相当于not (a == b),而 a == not b是错误的。
四、位运算符
运算符 | 描述 | 备注 |
---|---|---|
x | y | 按位或运算符 | |
x ^ y | 按位异或运算符 | |
x & y | 按位与运算符 | |
x << n | 左移动运算符 | |
x >> n | 右移动运算符 | |
~x | 按位取反运算符 |
五、赋值运算符
复合赋值运算符与算术运算符是一一对应的:
六、成员运算符
Python提供了成员运算符,测试一个元素是否在一个序列(Sequence)中。
运算符 | 描述 |
---|---|
in | 如果在指定的序列中找到值返回True,否则返回False。 |
not in | 如果在指定的序列中没有找到值返回True,否则返回False。 |