条件判断
判断是人类日常就会做的事情。 同样,判断也是程序最基础的核心功能。有了判断,程序才会有执行的逻辑。 就好比在我们这个文件管理项目中,判断的场景也随处可见。比如如果文件在垃圾桶中,那么文件就可以被彻底删除等等。
if 如果¶
if
很好理解,就是判断的基石,如果什么样就做什么。我们就用 if
来复现一下刚刚提到的文件系统里垃圾桶场景吧。
你可以尝试一下,把上面的in_trash = True
改成in_trash = False
,看看会有什么样的结果。 下面,我们在 in_trash
前面加上一个 not
来表示 in_trash
的反面,也就是不在垃圾桶里
的意思。
同样,你可以再尝试一下,把上面的in_trash = False
改成in_trash = True
,看看会有什么样的结果。
if-else 如果否则¶
其实,如果又要判断正面又要判断反面的情况,我们完全可以一次性搞定,比如下面使用 if-else
这种结构。 简单明了地就同时判断了正反面应该做的两件不同的事情。
判断条件¶
其实除了 True / False 还有很多其他的间接判断条件。比如下面列出来的这些判断标准。
判断 | 含义 |
---|---|
a == b | a 是否等于 b |
a > b | a 是否大于 b |
a >= b | a 是否大于等于 b |
a < b | a 是否小于 b |
a <= b | a 是否小于等于 b |
a != b | a 是否不等于 b |
如果是文字的话,也可以比较是否等于/不等于哦,其它那些大于小于都是用于数值判断的。
你还可以在这里尝试大把其他的判断,这些判断都会返回一个 True 后 False 的结果。甚至,你还可以叠加不同的判断。
我在下面再列一张表,来说明这些 and or not
的含义:
判断 | 含义 |
---|---|
True and True | 需要两边同时满足才能返回 True |
True or False | 只要一边是 True 则返回 True |
not True | 给出相反结果 |
有了这些工具,拿到最终的那个 True / False 后,你就能再套用在 if-else
的结构里啦,将判断依据与判断后的流程联通在一起。
if-elif-else¶
还有比 if-else
更强大的结构。因为有时候我们还需要多判断一些情况,比如周一要干嘛,周二要干嘛,周三要干嘛等等,这并不是一个非黑即白的判断,而是多重判断连在一起的。 所以我们必然有更好的方式去判断。
快来尝试一下其它的判断吧。比如你要判断多个数值区间你该怎么写呢?