什么是条件语句?
Python中的条件语句,是根据条件表达式为true还是false来执行不同的计算或操作。
条件语句叫“IF语句”。
什么是If语句?
在Python中,仅当IF语句为true时,它才会运行代码体。
当您想根据一个条件进行判断时,则使用“ if语句”。
句法:
if expression
Statement
else
Statement
让我们看一个例子
#
#Example file for working with conditional statement
#
def main():
x,y =2,8
if(x < y):
st= "x is less than y"
print(st)
if __name__ == "__main__":
main()
- 代码行5:我们定义了两个变量x,y = 2,8
- 代码行7:if语句检查条件x <y(在这种情况下为True)
- 代码行8:变量st设置为“ x is less than y”。
- 代码行9:行输出st将输出变量st的值,即“ x is less than y”,
当“if条件”不满足时会发生什么
在这一步中,我们将看到当您的“if”不满足时会发生什么。
- 代码行5:我们定义了两个变量x,y = 8,4
- 代码行7:if语句检查条件x <y在这种情况下为False
- 代码行8:因为条件不满足,所以变量st不会设置为“x is less than y”。
- 代码行9:打印st-尝试打印从未声明过的变量的值。 因此,我们得到一个错误。
如何使用else
当您必须根据另一种陈述来判断一种陈述时,通常使用else 。 如果一个条件出错,那么应该有另一个条件可以证明该语句或逻辑是正确的。
Example:
- 代码行5:我们定义了两个变量x,y = 8,4
- 代码行7:if语句检查条件x <y在这种情况下为False
- 代码行9:程序控制的流程转到else条件
- 代码行10:变量st设置为“x is greater than y”。
- 代码行11:打印st将输出变量st的值,即“ x is greater than y”,
当else不起作用时
可能在许多情况下,您的else无法给您期望的结果。 由于程序逻辑错误,将打印出错误的结果。 在大多数情况下,当您必须在程序中证明两个以上的语句或条件合理时,就会发生这种情况。
一个示例将更好地帮助您理解此概念。
此处两个变量都相同(8,8),程序输出为“x is greater than y”,这是错误的。 这是因为它检查第一个条件(if 条件),如果失败,则默认打印第二个条件(else条件)。 在下一步中,我们将看到如何纠正此错误。
如何使用“ elif”条件
Example
- 代码行5:我们定义了两个变量x,y = 8、8
- 代码行7:if语句检查条件x <y在这种情况下为False
- 代码行10:程序控制的流程转到elseif条件。 它检查x == y是否为真
- 代码行11:变量st设置为“ x is same as y”。
- 代码行15:程序控制流退出if语句(它将不会到达else语句)。 并打印变量st。 输出是“ x is same as y”,这是正确的
如何用最少的代码执行条件语句
在这一步中,我们将看到如何压缩条件语句。 无需为每个条件分别执行代码,我们可以将它们与单个代码一起使用。
Syntax
A If B else C
Example:
def main():
x,y = 10,8
st = "x is less than y" if (x < y) else "x is greater than or equal to y"
print(st)
if __name__ == "__main__":
main()
- 代码行2:我们定义了两个变量x,y = 10,8
- 代码行3:如果x <y,则将变量st设置为“ x is less than y ”,否则将其设置为“ x is greater than or equal to y”。 现在结果是x> y,所以变量st设置为“ x is greater than or equal to y”。
- 代码行4:打印st的值并提供正确的输出
- Python无需为条件语句编写冗长的代码,而是使您可以自由地以简洁的方式编写代码。
嵌套的IF语句
下面的示例演示嵌套if语句
total = 100
#country = "US"
country = "AU"
if country == "US":
if total <= 50:
print("Shipping Cost is $50")
elif total <= 100:
print("Shipping Cost is $25")
elif total <= 150:
print("Shipping Costs $5")
else:
print("FREE")
if country == "AU":
if total <= 50:
print("Shipping Cost is $100")
else:
print("FREE")
Switch语句
什么是switch语句?
switch语句是一个多路分支语句,它将变量的值与case语句中指定的值进行比较。
Python语言没有switch语句。
Python使用字典映射在Python中实现switch语句
Example
对于上面的switch语句Python中的替换是: