# if条件判断:if根据提供的条件进行判定,如果为真,则执行if后面的语句,反之不执行
# if作为基本的流程判断单元,使程序更灵活
# Python 中的 if else 语句可以细分为三种形式,分别是 if 语句、if...else 语句和 if...elif ...else 语句,它们的语法和执行流程如下图所示
# 基本语法:if是关键字,expression是条件表达式,条件表达式支持多重条件判断,可以用布尔操作符and、or和not连接,
# expr_true_suite是代码块,expression为true时执行,if语句时,代码块如果只有一行,整个条件语句便可全部写到一行,但可读性差。
# if语句
if expression:
expr_true_suite
# if...else 语句
if expression:
expr_true_suite1
else:
expr_true_suite2
# if...elif...else 语句
if expression1:
expr1_true_suite
elif expression2:
expr2_true_suite
elif expressionN:
exprN_true_suite
else:
none_of_the_above_suite
# 如上,语法同其它语言的条件语句类似,elif和else是可选的。
# 切记if、elif、else 语句的最后都有冒号:,不要忘记。
# if语句实例
if True:
print("if条件判断")
print("程序已执行")
if False:
print("if条件判断1")
print("程序执行完毕")
a = ("123")
if a:
print("if条件判断2")
a1 ={}
if a1:
print("if条件判断3")
# if后面的表达式会被强制转换为bool布尔值
# 布尔类型(bool)只有两个值,分别是 True 和 False,Python 会把 True 当做"真",把 False 当做"假"。
# 对于数字,Python 会把 0 和 0.0 当做"假",把其它值当做"真"。
# 对于其它类型,当对象为空或者为 None 时,Python 会把它们当做"假",其它情况当做真
# a = "" 空字符串
# a = [ ] 空列表
# a = ( ) 空元组
# a = { } 空字典
# a = None 空值
# 逻辑运算符与if语句
b = 123
b1 = []
# b为真,b1为假
# 值得注意的是,if语句如果为假,便不输出if中包含的代码块,如果程序外无代码,则感觉无反应
if b and b1:
print("if条件判断")
print("程序已执行")
if b or b1:
print("if条件判断1")
print("程序已执行1")
if not b:
print("if条件判断2")
# 成员运算符
# in
# not in
c = [1,2,3,4,5,6]
d = 1
# 判断d是否在c中
if d in c:
print("d在c中")
print("d不在c中")
if d not in c:
print("d不在c中")
print("d在c")
# 身份运算符
# is
# is not
f = 10
g = f
h = 10
# 判断g是不是等于f
if g is f:
print("g等于f")
print("g不等于f")
if g is not f:
print("g不等于f ")
print("g等于f ")
if h is f:
print("h等于f ")
print("h不等于f ")
# if…else… 语句分支
# 当if语句条件为假,则执行else后面语句,如果为真,则执行if后面语句
ab = 7
ac = 11
if ab > ac:
print("这是假的")
else:
print("ab不大于ac")
age = 14
if age < 10:
print("你真小!")
else:
print("你长大了!")
if age > 10:
print("你真大!")
else:
print("你长大了!")
# if...elif...else结构分支
# if expression1:
# 代码段1
# elif expression2:
# 代码段2
# else:
# 代码段3
# 多次判断score的值,可多次修改score的值试验代码运行结果
score = 100
if score >= 70 and score <= 100:
print("优秀")
elif score >=60 and score < 70:
print("及格")
else:
print("不及格")
# if 嵌套
# if 可多次嵌套执行
# if expression1:
# if expression2:
# 代码段
# else:
# 代码段
# else:
# 代码段
if score >= 70 and score <= 100:
print("优秀")
if score == 100:
print("你厉害")
else:
print("不及格")
if score >= 70 and score <= 100:
print("优秀")
if score == 100:
print("你厉害")
elif score >=60 and score < 70:
print("及格")
if score == 65:
print("还可以")
else:
print("不及格")