算数运算符
运算符 | 名称 | 实例 |
---|
+ | 加 | x + y | - | 减 | x - y | * | 乘 | x * y | / | 除 | x / y | % | 取模 | x % y | ** | 幂 | x ** y | // | 地板除(取整除) | x // y |
对于加减乘除就不做说明,主要说取模幂和整除(#后面为运行结果)
x = 5
y = 2
print(x % y)#1
x = 2
y = 5
print(x ** y) #same as 2*2*2*2*2
x = 15
y = 2
print(x // y)#7
Python 赋值运算符
赋值运算符用于为变量赋值
运算符 | 实例 | 等同于 |
---|
= | x = 5(赋值) | x = 5 | += | x += 3(先加再赋值) | x = x + 3 | -= | x -= 3(先减再赋值) | x = x - 3 | *= | x *= 3(先乘再赋值) | x = x * 3 | /= | x /= 3(先除再赋值) | x = x / 3 | %= | x %= 3(先取模再赋值) | x = x % 3 | //= | x //= 3(先整除再赋值) | x = x // 3 | **= | x **= 3(先幂再赋值) | x = x ** 3(后面的3为x的幂) | &= | x &= 3(按位与后赋值) | x = x & 3 | |= | x |= 3(按位或后赋值) | x = x | 3 | ^= | x ^= 3(按位异或后赋值) | x = x ^ 3 | >>= | x >>= 3(右移后赋值) | x = x >> 3 | <<= | x <<= 3(左移后赋值) | x = x << 3 |
主要解释一下后五个#后面依旧是答案
x = 0x02
x &= 0x01 #按位与后的结果为:0x00
x = 0x02
x |= 0x01#按位或的结果为:0x03 等同于0011
x = 0x02
x ^= 0x01#按位异或的结果为:0x03 等同于0011
x = 8
x >>= 3#右移后结果为:00000000 00000000 00000000 00000001
'''在这种赋值中首先应该把数转化为十进制8的二级进制
8=00000000 00000000 00000000 00001000然后右移三位赋值给x
x=00000000 00000000 00000000 00000001'''
x = 8
x <<= 3#左移后赋值结果为:00000000 00000000 00000000 01000000
Python 比较运算符
比较运算符用于比较两个值:
运算符 | 名称 | 实例 |
---|
== | 等于 | x == y | != | 不等于 | x != y | > | 大于 | x > y | < | 小于 | x < y | >= | 大于或等于 | x >= y | <= | 小于或等于 | x <= y |
Python 逻辑运算符(在此不做赘述)
逻辑运算符用于组合条件语句:
运算符 | 描述 | 实例 |
---|
and | 如果两个语句都为真,则返回 True。 | x > 3 and x < 10 | or | 如果其中一个语句为真,则返回 True。 | x > 3 or x < 4 | not | 反转结果,如果结果为 true,则返回 False | not(x > 3 and x < 10) |
Python 身份运算符
身份运算符用于比较对象,不是比较它们是否相等,但如果它们实际上是同一个对象,则具有相同的内存位置:
运算符 | 描述 | 实例 |
---|
is | 如果两个变量是同一个对象,则返回 true。 | x is y | is not | 如果两个变量不是同一个对象,则返回 true。 | x is not y |
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x
print(x is z)#ture
print(x is y)#false
print(x == y)#ture
x = ["apple", "banana"]
y = ["apple", "banana"]
z = x
print(x is not z)#false
print(x is not y)#ture
print(x != y)#false
Python 成员运算符
成员资格运算符用于测试序列是否在对象中出现:
运算符 | 描述 | 实例 |
---|
in | 如果对象中存在具有指定值的序列,则返回 True。 | x in y | not in | 如果对象中不存在具有指定值的序列,则返回 True。 | x not in y |
x = ["apple", "banana"]
print("banana" in x)#ture
x = ["apple", "banana"]
print("yyw" not in x)#ture
Python 位运算符(在此不做赘述)
位运算符用于比较(二进制)数字:
运算符 | 描述 | 实例 |
---|
& | AND | 如果两个位均为 1,则将每个位设为 1。 | | | OR | 如果两位中的一位为 1,则将每个位设为 1。 | ^ | XOR | 如果两个位中只有一位为 1,则将每个位设为 1。 | ~ | NOT | 反转所有位。 | << | Zero fill left shift | 通过从右侧推入零来向左移动,推掉最左边的位。 | >> | Signed right shift | 通过从左侧推入最左边的位的副本向右移动,推掉最右边的位。 |
|