【Python入门速学】2.4. 逻辑运算符
2.4.1. 逻辑运算符的作用
假设我们想要判断一个数字是否在 1 到 10 之间(包含 1 和 10)。我们可以使用 if-elif-else 语句来实现。然而,这种写法可能会导致部分代码重复,这有些冗余。
我们可以利用逻辑运算符 or
来简化代码。例如,如果数字小于 1 或者大于 10,那么就执行某个操作。
2.4.2. 逻辑运算符介绍
在 Python 中,我们常用以下三个逻辑运算符:
and
(与)or
(或)not
(非)
接下来,我们深入探讨 not
的用法。
not y # 如果 y 为 False,则 not y 为 True
如果 y
本身是 False,那么 not y
就是 True,因此相应的代码分支会执行
x and y # 只有当 x 和 y 都为 True 时,结果才是 True
如果 x
和 y
其中有一个是 False,那么 x and y
的结果就是 False,相应的代码分支不会执行。
x or y # 只要 x 或 y 其中之一为 True,结果就是 True
如果 x
或 y
至少有一个为 True,那么 x or y
的结果就是 True,相应的代码分支会执行。
此外,逻辑运算符两侧的表达式可以是比较运算表达式,例如:
if x > 50 or y > 50:
print("条件满足")
在这里,只有当 x
大于 50,或者 y
大于 50,条件才会成立。
2.4.3. 示例程序
我们来一步步实现一个示例程序。
在这个程序中,我们会询问用户他们在学校的角色,并据此判断他们是否可以获得教室钥匙。
- 如果用户是教师(teacher)或管理员(administrator),那么他们可以获得钥匙。
- 如果用户是学生(student),那么他们无法获得钥匙。
- 如果用户输入的角色不属于上述三类,我们会认为输入有误。
role = input("请输入你的身份(teacher/administrator/student):").lower()
if role == "teacher" or role == "administrator":
print("你可以获得教室钥匙。")
elif role == "student":
print("你无法获得教室钥匙。")
else:
print("输入有误,请重新输入。")