各类资料学习下载合集
https://pan.quark.cn/s/8c91ccb5a474
在 Python 编程中,理解运算符的种类及其优先级是非常重要的,尤其是在进行复杂表达式的计算时。本文将总结 Python 中的位操作符,并讨论运算符的优先级问题。
1. 位操作符
位操作符用于直接操作二进制位。Python 中的位操作符包括:
- 按位与 (
&):对于每一对相应的位,只有在两个位都为 1 时结果才为 1。
a = 5 # 二进制:0101
b = 3 # 二进制:0011
result = a & b # 结果:0001 (1)- 按位或 (
|):对于每一对相应的位,只要有一个位为 1,结果就为 1。
result = a | b # 结果:0111 (7)- 按位异或 (
^):对于每一对相应的位,只有在两个位不同的情况下结果才为 1。
result = a ^ b # 结果:0110 (6)- 按位取反 (
~):对每一位进行反转,0 变为 1,1 变为 0。
result = ~a # 结果:-6 (在 Python 中,取反会得到负数)- 左移 (
<<):将二进制位向左移动指定的位数,右侧补 0。
result = a << 1 # 结果:1010 (10)- 右移 (
>>):将二进制位向右移动指定的位数。
result = a >> 1 # 结果:0010 (2)2. 运算符优先级
运算符的优先级决定了在一个表达式中运算的顺序。优先级高的运算符先进行计算。以下是 Python 中运算符的优先级,从高到低:
- 括号
():首先计算括号内的表达式。 - 指数
**:计算幂。 - 单目运算符:如取反
-x、取正+x、按位取反~x。 - 乘法、除法、取余:
*,/,//,%。 - 加法、减法:
+,-。 - 位移操作:
<<,>>。 - 按位与
&。 - 按位异或
^。 - 按位或
|。 - 比较运算符:如
<,<=,>,>=,==,!=。 - 身份运算符:
is,is not。 - 成员运算符:
in,not in。 - 逻辑运算符:
not,and,or。 - 赋值运算符:
=,+=,-=, 等等。
3. 示例:运算符优先级
以下是一个例子,展示了运算符优先级如何影响计算结果:
a = 5
b = 3
c = 10
result = a + b * c # 先计算 b * c
print(result) # 输出: 35
result = (a + b) * c # 先计算 (a + b)
print(result) # 输出: 80









