# if条件语句
# 1.if语句:
# 语法
# if 条件判断:
# 条件成立的执行代码1
# 条件成立的执行代码2
# ...
# 注:if语句中的执行代码要缩进(4个空格),若不缩进,则不属于if语句中的执行代码
# 2.if...else...语句
# 2.1 作用:条件成立执行if下方的代码,条件不成立执行else下方的代码
# 2.2 语法
# if 条件判断:
# 条件成立的执行代码1
# 条件成立的执行代码2
# ...
# else:
# 条件不成立的执行代码1
# 条件不成立的执行代码2
# ...
# 注:条件成立的值为True,条件不成立的值为False
# 若条件判断为数据,而非表达式,则根据数据所对应布尔值进行判断
# 3.多重判断(if...elif...else语句)
# 3.1 语法
# if 条件1判断:
# 条件1成立的执行代码1
# 条件1成立的执行代码2
# ...
# elif 条件2判断:
# 条件2成立的执行代码1
# 条件2成立的执行代码2
# ...
# ...
# else:
# 以上条件都不成立的执行代码1
# 以上条件都不成立的执行代码2
# ...
# 注:else语句表示以上条件都不成立的时候执行的代码,也可不使用else语句
# 3.2 代码化简:如:score >= 85 and score <= 100 可化简为85 <= score <= 100
# 4.if嵌套
# 语法
# if 条件1判断:
# 条件1成立的执行代码1
# 条件1成立的执行代码2
# ...
# if 条件2判断:
# 条件2成立的执行代码1
# 条件2成立的执行代码2
# ...
# 注1:条件2的if也是出于条件1的缩进关系内部
# 注2:if语句也可换成if...else语句或if...elif...else语句
# if条件语句
# 1.if语句:
# 语法
# if 条件判断:
# 条件成立的执行代码1
# 条件成立的执行代码2
# ...
# 注:if语句中的执行代码要缩进(4个空格),若不缩进,则不属于if语句中的执行代码
if True:
print('条件成立的执行代码1') # 条件成立的执行代码1
print('条件成立的执行代码2') # 条件成立的执行代码2
if False:
print('条件成立的执行代码1') # 无输出
print('条件成立的执行代码2') # 无输出
print('无论条件是否成立我都执行') # 无论条件是否成立我都执行
# 2.if...else...语句
# 2.1 作用:条件成立执行if下方的代码,条件不成立执行else下方的代码
# 2.2 语法
# if 条件判断:
# 条件成立的执行代码1
# 条件成立的执行代码2
# ...
# else:
# 条件不成立的执行代码1
# 条件不成立的执行代码2
# ...
# 注:条件成立的值为True,条件不成立的值为False
# 若条件判断为数据,而非表达式,则根据数据所对应布尔值进行判断
# 用户输入年龄,判断是否成年,是否可进行上网
age = int(input("请输入您的年龄:")) # 请输入您的年龄:19
if age >= 18:
print(f'您的年龄是{age}岁,已成年,可以上网')
else:
print(f'您的年龄时{age}岁,小朋友,赶紧回家,不然会被父母挨揍的')
# 请输入您的年龄:19 / 请输入您的年龄:15
# 您的年龄是19岁,已成年,可以上网 / 您的年龄时15岁,小朋友,赶紧回家,不然会被父母挨揍的
# 注:条件成立的值为True,条件不成立的值为False
# 若条件判断为数据,而非表达式,则根据数据所对应布尔值进行判断
if 0: # 0所对应的布尔值为False,
print('条件成立')
else:
print('条件不成立')
# 条件不成立
if -1: # 非0数值所对应布尔值为True
print('条件成立')
else:
print('条件不成立')
# 条件成立
# 3.多重判断(if...elif...else语句)
# 3.1 语法
# if 条件1判断:
# 条件1成立的执行代码1
# 条件1成立的执行代码2
# ...
# elif 条件2判断:
# 条件2成立的执行代码1
# 条件2成立的执行代码2
# ...
# ...
# else:
# 以上条件都不成立的执行代码1
# 以上条件都不成立的执行代码2
# ...
# 注:else语句表示以上条件都不成立的时候执行的代码,也可不使用else语句
# 3.2 代码化简:如:score >= 85 and score <= 100 可化简为85 <= score <= 100
# 用户输入成绩,判断优良
score = int(input("请输入成绩"))
if score >= 85:
print("优秀") # 请输入成绩90 优秀
elif 75 <= score < 85:
print("良好") # 请输入成绩75 良好
elif 60 <= score < 75:
print("中等")
else:
print("差") # 请输入成绩-5 差
# 优化代码
score = int(input("请输入成绩"))
if score >= 85 and score <= 100:
print("优秀") # 请输入成绩90 优秀
elif 75 <= score < 85:
print("良好") # 请输入成绩75 良好
elif 60 <= score < 75:
print("中等")
elif score < 60 and score >= 0:
print("差")
# 请输入成绩-5
# Process finished with exit code 0 --- 表程序运行完毕
# 4.if嵌套
# 语法
# if 条件1判断:
# 条件1成立的执行代码1
# 条件1成立的执行代码2
# ...
# if 条件2判断:
# 条件2成立的执行代码1
# 条件2成立的执行代码2
# ...
# 注1:条件2的if也是出于条件1的缩进关系内部
# 注2:if语句也可换成if...else语句或if...elif...else语句
# 搜索某年某月有几天
year = int(input("请输入搜索的年份"))
month = int(input("请输入搜索的月份"))
if month in [1,3,5,7,8,10,12,]:
print("%d月有31天"% month)
elif month in [4,6,9,11]:
print("$d月有30天"% month)
elif month == 2:
if year % 400 == 0 or year % 4 == 0 and year % 100 != 0:
print("%d年%d月有29天"% (year, month))
else:
print("%d年%d月有28天"% (year,month))
# 请输入搜索的年份2020
# 请输入搜索的月份2
# 2020年2月有29天