详解Python if-elif-else知识点


Posted in Python onJune 11, 2018

有的时候,一个 if … else … 还不够用。比如,根据年龄的划分:

条件1:18岁或以上:adult
条件2:6岁或以上:teenager
条件3:6岁以下:kid

Python if-elif-else知识点

if age >= 18:
  print 'adult'
else:
  if age >= 6:
    print 'teenager'
  else:
    print 'kid'

这样写出来,我们就得到了一个两层嵌套的 if … else … 语句。这个逻辑没有问题,但是,如果继续增加条件,比如3岁以下是 baby:

if age >= 18:
  print 'adult'
else:
  if age >= 6:
    print 'teenager'
  else:
    if age >= 3:
      print 'kid'
    else:
      print 'baby'

这种缩进只会越来越多,代码也会越来越难看。

要避免嵌套结构的 if … else …,我们可以用 if … 多个elif … else … 的结构,一次写完所有的规则:

if age >= 18:
  print 'adult'
elif age >= 6:
  print 'teenager'
elif age >= 3:
  print 'kid'
else:
  print 'baby'

elif 意思就是 else if。这样一来,我们就写出了结构非常清晰的一系列条件判断。

特别注意: 这一系列条件判断会从上到下依次判断,如果某个判断为 True,执行完对应的代码块,后面的条件判断就直接忽略,不再执行了。

请思考下面的代码:

age = 8
if age >= 6:
  print 'teenager'
elif age >= 18:
  print 'adult'
else:
  print 'kid'

当 age = 8 时,结果正确,但 age = 20 时,为什么没有打印出 adult?

如果要修复,应该如何修复?

任务

如果按照分数划定结果:

90分或以上:excellent

80分或以上:good

60分或以上:passed

60分以下:failed

请编写程序根据分数打印结果。

答案

score = 85

if score >= 90:
print 'excellent'
elif score >= 80:
print 'good'
elif score >= 60:
print 'passed'
else :
print 'failed'

Python 相关文章推荐
python thread 并发且顺序运行示例
Apr 09 Python
Python的函数的一些高阶特性
Apr 27 Python
Python中.py文件打包成exe可执行文件详解
Mar 22 Python
Python closure闭包解释及其注意点详解
Aug 28 Python
浅谈Python的方法解析顺序(MRO)
Mar 05 Python
python 实现简单的计算器(gui界面)
Nov 11 Python
弄清Pytorch显存的分配机制
Dec 10 Python
将不规则的Python多维数组拉平到一维的方法实现
Jan 11 Python
k-means & DBSCAN 总结
Apr 27 Python
pytorch中Schedule与warmup_steps的用法说明
May 24 Python
Pygame如何使用精灵和碰撞检测
Nov 17 Python
python 闭包函数详细介绍
Apr 19 Python
基于anaconda下强大的conda命令介绍
Jun 11 #Python
python pandas.DataFrame选取、修改数据最好用.loc,.iloc,.ix实现
Jun 11 #Python
python中不能连接超时的问题及解决方法
Jun 10 #Python
Python爬虫实现(伪)球迷速成
Jun 10 #Python
python利用微信公众号实现报警功能
Jun 10 #Python
Python if语句知识点用法总结
Jun 10 #Python
Python continue继续循环用法总结
Jun 10 #Python
You might like
php 如何禁用eval() 函数实例详解
2016/12/01 PHP
网站被恶意镜像怎么办 php一段代码轻松搞定(全面版)
2018/10/23 PHP
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
jquery教程限制文本框只能输入数字和小数点示例分享
2014/01/13 Javascript
页面加载完毕后滚动条自动滚动一定位置
2014/02/20 Javascript
jQuery解决input超多的表单提交
2015/08/10 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
2016/12/28 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
zTree获取当前节点的下一级子节点数实例
2017/09/05 Javascript
webpack将js打包后的map文件详解
2018/02/22 Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
2020/08/19 Javascript
JavaScript实现网页计算器功能
2020/10/29 Javascript
[48:21]林俊杰圣堂刺客超神杀戮秀
2014/10/29 DOTA
Python实现爬取逐浪小说的方法
2015/07/07 Python
Python发送form-data请求及拼接form-data内容的方法
2016/03/05 Python
Pyqt实现无边框窗口拖动以及窗口大小改变
2018/04/19 Python
python使用Plotly绘图工具绘制散点图、线形图
2019/04/02 Python
python中for循环把字符串或者字典添加到列表的方法
2019/07/20 Python
Python实现多线程下载脚本的示例代码
2020/04/03 Python
Python基于wordcloud及jieba实现中国地图词云图
2020/06/09 Python
python缩进长度是否统一
2020/08/02 Python
Windows下Sqlmap环境安装教程详解
2020/08/04 Python
解决阿里云邮件发送不能使用25端口问题
2020/08/07 Python
python如何将图片转换素描画
2020/09/08 Python
python绘制雷达图实例讲解
2021/01/03 Python
英国和世界各地鲜花速递专家:Arena Flowers
2018/02/10 全球购物
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
有趣的睡衣和礼物:LazyOne
2019/11/27 全球购物
年会主持词结束语
2014/03/27 职场文书
企业群众路线教育实践活动心得体会
2014/11/03 职场文书
2014年科普工作总结
2014/12/06 职场文书
大学同学聚会感言
2015/07/30 职场文书
2019关于垃圾分类处理的调查报告
2019/12/26 职场文书
python 提取html文本的方法
2021/05/20 Python
Spring boot应用启动后首次访问很慢的解决方案
2021/06/23 Java/Android
Python作用域和名称空间的详细介绍
2022/04/13 Python