if语句:
单分支语句:由单独的if构成,条件为真执行if语句,否则不执行。
举例:
number=int(input()) if number>0: print("%d是正数"%number)
7 #7大于0,满足if语句的条件,因此该语句会被执行 7是正数
-2 #-2小于0,不满足if语句的条件,因此该语句不会被执行
双分支语句:由if和else构成的,条件为真执行if语句,条件为假,执行else语句。
举例:
number=int(input()) if number>0: print("%d是正数"%number) else: print("%d不是正数"%number)
9 #条件为真执行if语句表达式 9是正数
-3 #条件为假,执行else语句表达式 -3不是正数
if逻辑运算符 or:判断or左右两边的条件如果满足至少有一个为真,则执行if语句,否则执行else语句。
举例:
number1=int(input()) number2=int(input()) if number1>0 or number2>0: print("pass") else: print("Not pass")
有一个条件判断为真:
3 -1 pass
两个条件判断都是假:
-1 0 Not pass
两个条件判断都是真:
1 8 pass
if逻辑运算符and:判断and两边的表达式若都是真,则执行if语句,否则执行else语句。
举例:
number1=int(input()) number2=int(input()) if number1>0 and number2>0: print("pass") else: print("Not pass")
满足一个判断条件为真
8 -1 Not pass
满足两个判断条件为真
9 3 pass
满足两个判断条件均是假
-3 0 Not pass
if…elif语句:elif可以看作是多个if语句,它不同于else是if的对立,而是和if在逻辑上是并列关系。
举例:
number1=int(input()) if number1>0: print("%d是正数"%number1) elif(number1==0): print("%d既不是正数也不是负数"%number1) else: print("%d是负数"%number1)
9 #if语句表达式为真 9是正数
0 #if语句表达式不满足,满足if分支语句elif 0既不是正数也不是负数
-45 #if,elif都不满足,else语句被执行 -45是负数
小tips:if语句中,else语句是可以缺少的,它可以用elif语句代替。
if语句的嵌套:在某些场景下,我们满足一个条件还不够,需要满足多个条件,此时我们可以使用if语句的嵌套对其进行逐层筛选。
举例:
number1=int(input()) if number1>0: if(number1>10): print("%d是两位数"%number1) else: print("%d是个位数"%number1) else: print("%d不是正数"%number1)
8 #满足外层if语句,但不满足内层if语句。 8是个位数 19 #满足外层if语句,也满足内层if语句。 19是两位数 -3 #不满足外层if语句,无法进入内层再次判断。 -3不是正数
注意:必须先要满足外层if语句才有机会进入内层进行判断。