总结:
1)只有一个if条件判断,也算一个分之流
2)所有的分支控制,必须以if开头
3)if与elif后面必须加条件表达式,else后面不能加条件表达式
4)一个判断的分支,只有一个if,一个else,但是可以有多个elif
5)分支控制流是按照顺序执行代码,来选择判断条件
一、if语句的作用
主要用于验证某个条件,条件为真就运行if下的代码块,否则就运行else下的代码块。
二、if语句的表达式
1、if... 不需要有elif或者else
if grade < 40:
print("E")
2、if...else...
if 5>4 :
# 在python中,遇到冒号要缩进,表示一个分支
print("大于")
else:
print("以上的条件不满足,否则!")
3、if...elif...elif...else 完整的if表达式
需要注意的点:
1)在一个完整的if表达式当中,只会有一个分支代码会被执行,不可能执行2个或者2个以上的分支
2)只要一个分支满足,剩下的就不会在判断
# 成绩评分 40以下-E ;40-60-D;60-80-C,80-90-B;90> A
grade = int(input("请输入你的成绩:"))
if grade < 40:
print("E")
elif 40 <= grade < 60:
print("D")
elif 60 <= grade < 80:
print("C")
elif 80 <= grade < 90:
print("B")
else:
print("A")
4、多个if条件 if...if...if...if...else...
1) 多个if都是独立的条件
2) if不需要每次配对else,也不需要一定得有elif
grade = int(input("请输入你的成绩:"))
if grade < 40:
print("E")
else:
pass # 为空 不执行的
if 30 <= grade < 60:
print("D")
if 29 <= grade < 80:
print("C")
if 31 <= grade < 90:
print("B")
else:
print("A") # 和最后一个if配对
5、if的嵌套 可以嵌套很多层if,尽量少用。
1)需要注意的是,每一个if对应else缩进要正确
grade = int(input("请输入你的成绩:"))
name = input(("请输入你的名字:"))
has_boyfriend = True
if grade < 40:
print("恭喜你,你的成绩不太好!")
if name == '王王':
print("走后们得到一个A!")
if has_boyfriend == True:
print("早恋,留校查看!!!")
else:
print("还好你不是关系户")
else:
print("你的分数已经很高了")
6、if not语句
has_boyfriend = False
# if has_boyfriend == True:
# print("有男朋友")
# else:
# print("单身dog")
if has_boyfriend:
print("有男朋友")
else:
print("单身dog")
if not has_boyfriend:
print("有男朋友")
else:
print("单身dog")
7、 if 后面直接一个变量:可以省略不写
1) 变量 True 或者 False
a = True
if a:
print("a是True")
# 可以参考第六点的语句
2)空字符串代表False,只要字符串不是空的,就代表True
name = ''
if name:
print("输入成功")
else:
print("输入不成功")
name_new = "wang"
if name_new:
print("输入成功")
else:
print("输入不成功")
3)空格也是个字符,所以代表True
string = ' '
if string:
print("有值")
else:
print("无值")
4)数字0代表 False,非0代表True
a = 1
if a:
print("True")
else:
print("False")
5)列表,空列表代表False,非空列表代表True
empty_list = []
if not empty_list:
print("空列表")
else:
print("非空列表")
6)字典,空字典代表False,非空字典True
empty_dict = {}
if empty_dict:
print("空字典")
else:
print("非空字典")