python之 if、elif、else 条件语句

详见链接:
http://www.runoob.com/python/python-if-statement.html

形式1:

if 判断条件:
    执行语句……
else:
    执行语句……

形式2:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

练习题:

在企业开发中,经常有各种各样的“状态”,如员工信息中,有“在职状态”,现有变量status,
当status值为0时,在职状态为“实习”
当status值为10时,在职状态为“在职”
当status值为20时,在职状态为“调出”
当status值为30时,在职状态为“离职”
当status值为其他时,在职状态为“未知”
通过编写程序,当status变量是不同的值时,打印出在职状态

练习题

根据成绩分数打印优良中及格不及格
score=90

大于等于90,打印优
大于等于80,打印良
大于等于70,打印中
大于等于60,打印及格
否则打印不及格

score=90
if score>=90:
    print('优')
elif score>=80:
    print('良')
elif score>=70:
    print('中')
elif score>=60:
    print('及格')
else:
    print('不及格')

观察下面的代码是否可以执行

score=90
if score>=90:
    print('优')
elif score>=80:
    print('良')

if score>=70:
    print('中')
elif score>=60:
    print('及格')
else:
    print('不及格')

逻辑与

关键字and,当判断条件1和判断条件2都为True时,才执行语句A,否则就执行语句B

if 判断条件1 and 判断条件2:
    执行语句A……
else:
    执行语句B……

练习

定义两个变量,分别表示 数学成绩、语文成绩,当数学、语文成绩都要考90分以上,打印奖励,否则打印没有奖励

shuxue=90
yuwen=90

# print(shuxue>=90 and yuwen>=90)

if shuxue>=90 and   yuwen>=90:
    print('奖励')
else:
    print('没奖励')

逻辑与,多个条件都为True,最终结果才为True;如果有一个为False,最终结果就是False

逻辑或

关键字or,当判断条件1、判断条件2有一个为True时,就执行语句A,否则就执行语句B

if 判断条件1 or 判断条件2:
    执行语句A……
else:
    执行语句B……

练习题

定义两个变量,分别表示 数学成绩、语文成绩,当数学、语文有一科考90分以上就打印奖励,两科都没考过90,就打印没有奖励

shuxue=80
yuwen=89

if shuxue>=90 or yuwen >=90:
    print('奖励')
else :
    print('没有奖励')

逻辑或:多个条件,只要有一个为True,就为True,全为False,最终结果就是False

逻辑非

关键字not,取判断条件相反的值,该值为True时,就执行语句A

if not 判断条件:
    执行语句A……
else:
    执行语句B……

与或非优先级

优先级是not>and>or

小练习

实现:输入4位年份,判断该年份是否是闰年
判断闰年:

  1. 能被4整除且不能被100整除
  2. 能被400整除

输入函数参见:
http://www.malaoshi.top/show_1EF1TFloLnSA.html

测试:输入1600,1900,2000,2100年等特殊年份


原文出处:/show_1EF1T5B0YdTS.html