📜  Python运算子(1)

📅  最后修改于: 2023-12-03 14:46:47.910000             🧑  作者: Mango

Python运算子

Python运算子是一组用于执行算术、比较和逻辑运算的符号。Python支持各种运算子,这使得编写复杂的程序变得更加容易和简单。以下是Python中可用的运算子类型:

1. 算术运算子

算术运算子用于执行数学运算,如加法、减法、乘法和除法。Python中的算术运算子如下:

| 运算子 | 描述 | | --- | --- | | + | 加法 | | - | 减法 | | * | 乘法 | | / | 除法 | | % | 取模(获取除法运算的余数) | | ** | 幂(返回x的y次幂) | | // | 取整除(向下取整到最接近的整数) |

示例代码:

a = 10
b = 20

print("a + b =", a + b)   # 加法
print("a - b =", a - b)   # 减法
print("a * b =", a * b)   # 乘法
print("a / b =", a / b)   # 除法
print("a % b =", a % b)   # 取模
print("a ** b =", a ** b) # 幂
print("a // b =", a // b) # 取整除

输出结果:

a + b = 30
a - b = -10
a * b = 200
a / b = 0.5
a % b = 10
a ** b = 100000000000000000000
a // b = 0
2. 比较运算子

比较运算子用于比较两个值,并返回一个布尔值(True或False)。Python中的比较运算子如下:

| 运算子 | 描述 | | --- | --- | | == | 等于 | | != | 不等于 | | > | 大于 | | < | 小于 | | >= | 大于等于 | | <= | 小于等于 |

示例代码:

a = 10
b = 20

print("a == b =", a == b)   # 等于
print("a != b =", a != b)   # 不等于
print("a > b =", a > b)     # 大于
print("a < b =", a < b)     # 小于
print("a >= b =", a >= b)   # 大于等于
print("a <= b =", a <= b)   # 小于等于

输出结果:

a == b = False
a != b = True
a > b = False
a < b = True
a >= b = False
a <= b = True
3. 逻辑运算子

逻辑运算子用于执行逻辑运算,如与、或和非。Python中的逻辑运算子如下:

| 运算子 | 描述 | | --- | --- | | and | 与(如果两个操作数都为True,则返回True,否则返回False) | | or | 或(如果任一操作数为True,则返回True,否则返回False) | | not | 非(如果操作数为True,则返回False,否则返回True) |

示例代码:

a = True
b = False

print("a and b =", a and b)   # 与
print("a or b =", a or b)     # 或
print("not a =", not a)       # 非

输出结果:

a and b = False
a or b = True
not a = False
4. 位运算子

位运算子用于执行位运算,如按位与、按位或、按位异或和按位取反。Python中的位运算子如下:

| 运算子 | 描述 | | --- | --- | | & | 按位与(如果两个相应的二进制位都为1,则该位的结果值为1;否则为0) | | | | 按位或(如果两个相应的二进制位都为0,则该位的结果值为0;否则为1) | | ^ | 按位异或(如果两个相应的二进制位值不同,则该位结果为1,否则为0) | | ~ | 按位取反(按位取反运算符是一元运算符,用于将二进制数的每个位取反,即0变为1,1变为0) | | << | 左移位(将二进制数向左移动指定的位数,并在右侧填充0) | | >> | 右移位(将二进制数向右移动指定的位数) |

示例代码:

a = 60    # 60的二进制表示为 0011 1100
b = 13    # 13的二进制表示为 0000 1101

print("a & b =", a & b)   # 按位与
print("a | b =", a | b)   # 按位或
print("a ^ b =", a ^ b)   # 按位异或
print("~a =", ~a)         # 按位取反
print("a << 2 =", a << 2) # 左移位
print("a >> 2 =", a >> 2) # 右移位

输出结果:

a & b = 12
a | b = 61
a ^ b = 49
~a = -61
a << 2 = 240
a >> 2 = 15
5. 赋值运算子

赋值运算子用于将一个值赋值给一个变量。Python中的赋值运算子如下:

| 运算子 | 示例 | 描述 | | --- | --- | --- | | = | a = 5 | 将5赋值给变量a | | += | a += b | 等同于 a = a + b | | -= | a -= b | 等同于 a = a - b | | *= | a *= b | 等同于 a = a * b | | /= | a /= b | 等同于 a = a / b | | %= | a %= b | 等同于 a = a % b | | **= | a **= b | 等同于 a = a ** b | | //= | a //= b | 等同于 a = a // b |

示例代码:

a = 5

a += 3    # 等同于 a = a + 3
print("a =", a)

a -= 2    # 等同于 a = a - 2
print("a =", a)

a *= 2    # 等同于 a = a * 2
print("a =", a)

a /= 4    # 等同于 a = a / 4
print("a =", a)

a %= 2    # 等同于 a = a % 2
print("a =", a)

a **= 3   # 等同于 a = a ** 3
print("a =", a)

a //= 3   # 等同于 a = a // 3
print("a =", a)

输出结果:

a = 8
a = 6
a = 12
a = 3.0
a = 1.0
a = 1.0
a = 0.0
6. 成员运算子

成员运算子用于测试序列是否包含指定的值。Python中的成员运算子如下:

| 运算子 | 描述 | | --- | --- | | in | 如果序列中包含指定的元素,则返回True,否则返回False | | not in | 如果序列中不包含指定的元素,则返回True,否则返回False |

示例代码:

a = [1, 2, 3, 4, 5]

print("3 in a =", 3 in a)         # 测试3是否在列表a中
print("6 not in a =", 6 not in a) # 测试6是否不在列表a中

输出结果:

3 in a = True
6 not in a = True
7. 身份运算子

身份运算子用于比较两个对象的内存地址。Python中的身份运算子如下:

| 运算子 | 描述 | | --- | --- | | is | 如果两个变量引用同一个对象,则返回True,否则返回False | | is not | 如果两个变量引用的不是同一个对象,则返回True,否则返回False |

示例代码:

a = [1, 2, 3]
b = a
c = [1, 2, 3]

print("a is b =", a is b)         # 测试a和b是否引用同一个对象
print("a is c =", a is c)         # 测试a和c是否引用同一个对象
print("a is not c =", a is not c) # 测试a和c是否引用不是同一个对象

输出结果:

a is b = True
a is c = False
a is not c = True
结论

Python运算子非常强大,可以使编写程序变得更加简单和容易。掌握这些运算子,相信会帮助你更好地编写Python程序。