Python基本运算符知识点及练习题
Python基本运算符知识点教程
一、算术运算符
运算符 | 描述 | 示例 | 结果 |
+ | 加 | 3 + 2 | 5 |
- | 减 | 5 - 3 | 2 |
* | 乘 | 2 * 3 | 6 |
/ | 除 | 10 / 3 | 3.333 |
// | 整除 | 10 // 3 | 3 |
% | 取模 | 10 % 3 | 1 |
** | 幂运算 | 2 ** 3 | 8 |
二、比较运算符
运算符 | 描述 | 示例 | 结果 |
== | 等于 | 5 == 5 | True |
!= | 不等于 | 5 != 3 | True |
> | 大于 | 5 > 3 | True |
< | 小于 | 5 < 3 | False |
>= | 大于等于 | 5 >= 5 | True |
<= | 小于等于 | 3 <= 5 | True |
三、逻辑运算符
运算符 | 描述 | 示例 | 结果 |
and | 逻辑与(全真为真) | True and False | False |
or | 逻辑或(一真即真) | True or False | True |
not | 逻辑非(取反) | not True | False |
四、赋值运算符
运算符 | 示例 | 等价于 |
= | x = 5 | 直接赋值 |
+= | x += 3 | x = x + 3 |
-= | x -= 2 | x = x - 2 |
*= | x *= 4 | x = x * 4 |
/= | x /= 2 | x = x / 2 |
%= | x %= 3 | x = x % 3 |
**= | x **= 2 | x = x ** 2 |
五、位运算符
运算符 | 描述 | 示例(二进制运算) | 结果 |
& | 按位与 | 0b1010 & 0b1100 | 8 (0b1000) |
| | 按位或 | 0b1010 | 0b1100 | 14 (0b1110) |
^ | 按位异或 | 0b1010 ^ 0b1100 | 6 (0b0110) |
~ | 按位取反 | ~0b1010 | -11(补码) |
<< | 左移 | 0b1010 << 2 | 40 (0b101000) |
>> | 右移 | 0b1010 >> 1 | 5 (0b0101) |
六、成员运算符
运算符 | 描述 | 示例 | 结果 |
in | 是否在容器中 | "a" in "abc" | True |
not in | 是否不在容器中 | 3 not in [1,2] | True |
七、身份运算符
运算符 | 描述 | 示例(假设a = [1], b = [1]) | 结果 |
is | 是否是同一对象 | a is b | False |
is not | 是否不是同一对象 | a is not b | True |
20道练习题 & 答案
基础题
- 5 * 3 + 2 的结果是?
答案:17 - 10 % 3 的值是多少?
答案:1 - 5 == 5.0 的结果是?
答案:True(值相等,但类型不同)。 - not (True or False) 的结果是?
答案:False - x = 5, x += 3 后,x 的值是?
答案:8
进阶题
- 2 ** 3 ** 2 的结果是?
答案:512(等价于 2^(3^2))。 - 10 + 3 * 2 的结果是?
答案:16(乘法优先)。 - 5 & 3 的二进制运算结果是多少?
答案:1(0b101 & 0b011 = 0b001)。 - "apple" in ["apple", "banana"] 的结果?
答案:True - a = [1]; b = a; print(a is b) 的输出是?
答案:True(引用同一对象)。
应用题
- 编写代码,判断一个数是否为偶数。
答案:
num = int(input("输入数字:"))
print(num % 2 == 0)
- 计算 (3 + 5) * 2 - 4 ** 2 的值。
答案:(8)*2 - 16 = 0 - 用户输入年龄,若大于等于18且小于60,输出“可工作”。
答案:
age = int(input("输入年龄:"))
print(18 <= age < 60)
- 将 x = 10 左移2位后的值。
答案:x << 2 → 40 - a = 5, b = 3,交换它们的值(不使用临时变量)。
答案:
a, b = b, a
挑战题
- True + 2 的结果是?
答案:3(True视为1)。 - bool(0) or bool("") 的结果是?
答案:False(两者均为假)。 - 3 << 2 | 1 的二进制结果是多少?
答案:0b1101(即13)。 - a = 10; a ^= 5; a ^= 5,最终的 a 值是多少?
答案:10(异或两次恢复原值)。 - print(3 < 5 < 7) 的输出是?
答案:True(等价于 3 < 5 and 5 < 7)。
通过练习,可以全面掌握Python运算符的用法及优先级规则!