大家好,欢迎来到 Crossin的编程教室 !
不过之前遇到的例子都是单个条件。如果需要对多个条件同时进行判断,比如判断一个人「既会唱跳又会打篮球」,那就需要用到「逻辑运算符」。
Python 中有 3 个基本的逻辑运算符,用来进行 bool 值的计算,分别是 and、or、not。
逻辑运算符的运算规律可以用以下的「真值表」进行表示。
and 表示「逻辑与」,可以理解为我们平常说的「并且」:
就是指「是否满足 会唱跳 并且 会打篮球」,也就是判断一个人是不是这两样都会。
and 两边的条件均为 True,结果才为 True;否则为 False。
or 表示「逻辑或」,也就是我们平常说的「或者」:
就是指「是否满足 会唱跳 或者 会打篮球」,也就是判断一个人是不是至少会其中一样。
or 两边的条件至少有一个为 True,结果即为 True;均为 False 结果才为 False。
而 not 就是「不」的意思,表示「逻辑非」:
就是「是否满足 不会唱跳」。
就是「是否满足 不会打篮球」。
学过 C++ 或 Java 的同学一定知道 && 和 || 这两个运算符分别表示逻辑与和逻辑或。在 Python 中也有 & 和 | 这两个类似的运算符,且一样可以执行。但可惜这两个符号的含义另有所指,表示的是「按位与」和「按位或」,也就是把两个数字按照转成二进制后的每一位进行与/或操作得到的结果。例如:
输出:
最后,给大家留一个简单的思考题:
如果要表示一个人「不会唱跳和打篮球」,应该怎么写?给大家几个选项,哪个写法是对的?
not 会唱跳 and 会打篮球
not (会唱跳 and 会打篮球)
not (会唱跳 or 会打篮球)
not 会唱跳 and not 会打篮球
领取专属 10元无门槛券
私享最新 技术干货