400-650-7353

精品课程

您所在的位置:首页 > IT干货资料 > python > 【Python基础知识】Python中的复杂if语句(下)

【Python基础知识】Python中的复杂if语句(下)

  • 发布: python培训
  • 来源:python干货资料
  • 2020-09-04 14:36:23
  • 阅读()
  • 分享
  • 手机端入口

1 嵌套的条件语句

条件语句是可以嵌套的,在条件测试的值为True后,有时候需要检查其他的条件。在这种情况下,可以使用嵌套的条件语句。

嵌套的条件语句的执行流程如图所示。

需要注意的是,每多嵌套一层条件语句,就需要多一层缩进。下面是一个嵌套条件语句的示例:

  1. >>> a = 10 
  2. >>> b = 5 
  3. >>> c = 13 
  4. >>> if a < 20
  5. ...     print('a小于20'
  6. ...     if b > 3:   # 增加一层缩进 
  7. ...         print('a小于20且b大于3'
  8. ...         if c == 15:   # 每多一层嵌套就要多一层缩进 
  9. ...             print('a小于20,b大于3且c等于15'
  10. ... 
  11. a小于20 
  12. a小于20且b大于3 

与if同一组的elif/else要保持对应的缩进层级。例如,BMI可以用来衡量身体的肥胖指数,计算公式是体重(kg)除以身高(m)的平方,这个程序首先让用户输入身高和体重,然后计算出BMI值,最后输出结果:

  1. height = float(input('请输入您的身高(单位:米):'))   # 用户输入身高 
  2. weight = float(input('请输入您的体重(单位:千克):'))   # 用户输入体重 
  3. if height < 2.5 and weight > 25:   # <1>粗略判断身高和体重是否在正常范围内 
  4.     bmi = weight / height ** 2   # 计算bmi值 
  5.     if bmi < 18.5:   # <2>根据bmi值判断肥胖指数 
  6.         print('偏瘦'
  7.     elif 18.5 <= bmi < 22.9:   # <3> 
  8.         print('正常'
  9.     else:   # <4> 
  10.         print('偏胖'
  11. elif height >= 2.5:   # <5>如果输入的身高不符合要求则给出提醒 
  12.     print('您输入的身高有误,请重新输入!'
  13. else:   # <6> 
  14.     print('您输入的体重有误,请重新输入!'

建议将这个程序使用脚本模式运行。输入几组数据,测试运行结果:

  1. 请输入您的身高(单位:米):1.8 
  2. 请输入您的体重(单位:千克):60 
  3. 正常 
  4. 请输入您的身高(单位:米):1.7 
  5. 请输入您的体重(单位:千克):40 
  6. 偏瘦 
  7. 请输入您的身高(单位:米):3 
  8. 请输入您的体重(单位:千克):66 
  9. 您输入的身高有误,请重新输入! 

观察以上程序可以发现, 注释中标号<1> <5> <6>是同一缩进层级,而<2> <3> < 4>是同一缩进层级。

2 if-else三目运算符

有的时候if-else语句会很简短:

  1. >>> fruit = 'banana' 
  2. >>> if fruit == 'banana'
  3. ...     print('Yes!'
  4. ... else
  5. ...     print('No'
  6. ...  
  7. Yes! 

它简短到似乎不是很有必要占用这么多行,Python中的三目运算符可以更方便地完成这个任务:

  1. >>> fruit = 'banana' 
  2. >>> print('Yes'if fruit == 'banana' else print('No'
  3. Yes 

三目运算符的语法格式如下:

代码块1(如果表达式为真) if 表达式 else 代码块2(如果表达式为假)

三目运算符还可以用来根据不同条件测试,给变量赋不同的值:

  1. >>> grade = 70 
  2. >>> level = '及格' if grade >= 60 else '不及格' 
  3. >>> level 
  4. '及格' 

 

课程好礼申请领取
您的姓名
您的电话
意向课程
 

中公优就业

官方QQ

扫描上方二维码或点击一键加群,免费领取价值599元网课,加群暗号:599。 一键加群

>>本文地址:
注:本站稿件未经许可不得转载,转载请保留出处及源文件地址。

推荐阅读

优就业:ujiuye

关注中公优就业官方微信

  • 关注微信回复关键词“大礼包”,领80G学习资料
QQ交流群
领取免费网课
(加群备注“网站”)
IT培训交流群 加入群聊 +
软件测试 加入群聊 +
全链路UI/UE设计 加入群聊 +
Python+人工智能 加入群聊 +
互联网营销 加入群聊 +
Java开发 加入群聊 +
PHP开发 加入群聊 +
VR/AR游戏开发 加入群聊 +
大前端 加入群聊 +
大数据 加入群聊 +
Linux云计算 加入群聊 +
优就业官方微信
扫码回复关键词“大礼包”
领取80G学习资料

淘宝商家短视频
预约试听
2020OAO训练营
免费试听
课程资料、活动优惠 领取通道