有时候,我们需要依照某种条件,再决定要不要做某个操作。在Python中,if语句能够帮助我们检查程序的当前状态,告诉计算机接下来该做什么。
每个if后面都跟着一个True或False的表达式,我们称之为“条件表达式”。那么什么是条件表达式?我们直接上例子吧!
>>> True == False False >>> 10 > 9 True >>> "A" == "A" True >>> 5 >= 10 False
上面代码演示的都是一个个单一的条件表达式。如果我们需要同时满足多个条件,或满足多个条件中的任一一个,应该怎么写“多条件表达式”呢?这就需要结合and和or关键字了。
>>> (1 > 5) and ("A" != "B") False >>> (1 > 5) or ("A" != "B") True
当知道什么是“条件表达式”后,接下来,结合if应该怎么用呢?看一个简单的例子就行。
>>> if True != False: ... print("今天天气很好!") ... 今天天气很好!
前面我们已经讲述了“条件表达式”的概念,下面我们直接来看看if表达式的不同变种形式。
最简单的if表达式,只有一个条件表达式和一个执行语句,语法如下:
if 条件表达式: 执行语句……
案例:如果天气好,我就去旅游。
x = "天气好" if x == "天气好": print("我就去旅游") # 结果:我就去旅游
有时候,我们想:当满足某个条件表达式时,执行某个语句;不满足时,就执行另外一个语句。此时就需要使用if - else表达式,语法如下:
if 条件表达式: 执行语句1…… else: 执行语句2……
案例:如果天气好,我就去旅游;否则就呆在家。
x = "下雨" if x == "天气好": print("我就去旅游") else: print("呆在家") # 结果:呆在家
当判断条件涉及到3个条件表达式的时候,Python中提供了if - elif - else结构,来实现该需求,语法如下:
if 条件表达式1: 执行语句1…… elif 条件表达式2: 执行语句2…… else: 执行语句3……
案例:植物园门票,<10岁不收钱,[10,18)岁收50元,[18,+∞)岁收80元。
x = 17 if x < 10: print("不收钱") elif x >= 10 and x < 18: print("收50元") else: print("收80元") # 结果:收50元
如果判断条件有3个条件表达式以上,Python中提供了if - elif - ... - elif - else结构等多elif结构,供我们使用,语法如下:
if 条件表达式1: 执行语句1…… elif 条件表达式2: 执行语句2…… elif 条件表达式3: 执行语句3…… else: 执行语句4……
案例:动物园门票,<10岁不收钱,[10,18)岁收30元,[18,25)岁收60元,[25,+∞)岁收80元。
x = 23 if x < 10: print("不收钱") elif x >= 10 and x < 18: print("收30元") elif x >= 18 and x < 25: print("收60元") else: print("收80元") # 结果:收60元
在这个结构中,我们可以保留else表达式,也可以直接省略else表达式,操作还是和上面一样,这里就不在做演示说明。