模块课程(3/4)
条件语句:if、elif、else
条件让您根据条件运行不同的代码
布尔表达式的值。在Python中,它们是用if、elif编写的
(“else if”的简写)和 else。
基本形式
eta = 18
if eta >= 18:
messaggio = "maggiorenne"
else:
messaggio = "minorenne"注意:
- 条件后面总是有一个冒号
:; - if“内部”的块由缩进(4 个空格)标识;
- 条件周围不需要括号(尽管这是允许的)。
更多具有 elif 的分支
voto = 7
if voto >= 9:
giudizio = "ottimo"
elif voto >= 7:
giudizio = "buono"
elif voto >= 6:
giudizio = "sufficiente"
else:
giudizio = "insufficiente"elif 分支按照您编写它们的顺序进行评估,并且它们停止于
第一个被证明是正确的。
条件表达式(三元)
对于简单的情况,您可以将所有内容写在一行上:
eta = 20
messaggio = "maggiorenne" if eta >= 18 else "minorenne"它用英语自然地读起来:“maggiorenne if eta >= 18 else 未成年人”。
“真”/“假”值
条件不一定是比较:任何值都可以
可以作为条件使用。这些被认为是错误的:False、None、0、
""、[]、{}。其他一切都是真的。
nome = "Ada"
if nome:
saluto = f"Ciao {nome}!"
else:
saluto = "Ciao sconosciuto!"条件表达式(三元运算符)
Python 支持紧凑的单行 if-else 构造,它充当其他语言中的三元运算符:
result = "Even" if n % 2 == 0 else "Odd"当您只需要根据条件分配值时,这可以使您的代码保持简洁。
自己尝试一下
给定“number = 15”,如果数字 > 0,则将字符串“positivo”分配给“sign”;如果数字为 0,则分配“零”;否则分配“negativo”。评估“标志”。
显示提示
三个分支:> 0,== 0,否则。
3 次尝试后可用的解决方案
复习练习
给定“age = 20”,使用三元表达式(if/else 在一行上)将字符串“maggiorenne”或“minorenne”分配给“category”。
显示提示
语法: value_if_true if 条件 else value_if_false
3 次尝试后可用的解决方案
额外的挑战
Write a conditional structure that checks if the variable `x` (initialized to `-5`) is greater than 0, less than 0, or equal to 0. Assign the string `'positive'`, `'negative'`, or `'zero'` to `sign` accordingly. Finally, evaluate `sign`.
显示提示
使用 if x > 0:、elif x < 0: 和 else: 来处理这三种情况。
3 次尝试后可用的解决方案