S4E18 Python Snakify L3 条件判断
引言
编程最主要的结构就是判断与重复。在这节将为大家介绍判断语句 if-else 。这节课使用的是 sankify Lesson 3 的课程。若先前对 snakify 还不熟悉,请先参阅以下文章。
1. snakify Lesson 1 S4E04 Python 学习平台 Snakify
2. snakify Lesson 2 S4E10:Snakify Lesson2 - 0.1+0.2不等于0.3?快来一探究竟吧~
课程架构
在这结课主要学习,判断语句的使用,也就是 if-else 的结构。
其课程架构分为五部分
1. Synttax 语法
2. Nested conditions 巢状判断语句
3. Comparison operators 比较判断运算元
4. Bool objects and logical operators 逻辑运算元
5. 'elif' word 多重判断
1. Synttax 语法
1. 学 if 后,就进入槽状结构(如下图)。
2. if else 结尾要用 「 : 」
3. 不同于多数语言是用括号来限定范围,Python 是利用内缩来控制范围的。因此内缩很重要。

2. Nested conditions 巢状判断语句
1. 当有多重的判断时,就需要 if 内部再套用 if-else 的结构。
2. 使用双重判断时,缩排的对齐要注意

3. Comparison operators 比较判断运算元
1. 在逻辑判断中,最需要提醒的就是 == 表示判断是否相等。
2. 用 <= 来表示小于等于。
3. 用 != 来表示不等于。
4. Bool objects and logical operators 逻辑运算元
1. 利用 and or not 的逻辑运算元来处理多重判断。
2. bool() 这函数只要是非 0 的结果都为 True。
3. bool('') 为 False, bool(0) 为 False
5. 'elif' word 多重判断
巢状的 if 也可改写为 if-elif-else 的结构,但若原本的结构适合用巢状表示就用巢状。对是同层的架构,例如 60~69,70~79,80~89,90~100 这个分类就比较适合用 elif

练习问题
学完基本概念后,最重要的还是应用练习。除了语法外,更重要是想清楚逻辑顺序。尤其稍微复杂的问题时是需要进行多重的判断。
文中介绍了四个 Problems 的解说课程。除了完成这四个外,建议至少再完成 4 个练习,来熟悉编程的思维逻辑与语法。
1. Ends On Seven : 用 %来求个位数
2. Are Both Odd :and 的初步使用
3. Linear Equations:结合代数的情境来判断 ax=b 的解
4. Vertices of Rectangle :多重 if 的使用。
参考资源
【Bili 】https://www.bilibili.com/video/av35244401
【Snakify 】 https://snakify.org/en/lessons/if_then_else_conditions/
【YouTube】 https://www.youtube.com/playlist?list=PLXH05kw-i_5Km0D4rky8_s6yOD-NNh1k5