详解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 获取新浪微博的最新公共微博实例分享
Jul 03 Python
Python实现简单多线程任务队列
Feb 27 Python
Python字典,函数,全局变量代码解析
Dec 18 Python
python删除服务器文件代码示例
Feb 09 Python
Python向MySQL批量插数据的实例讲解
Mar 31 Python
python迭代dict的key和value的方法
Jul 06 Python
Python使用reportlab模块生成PDF格式的文档
Mar 11 Python
Django Rest framework权限的详细用法
Jul 25 Python
Python使用scipy模块实现一维卷积运算示例
Sep 05 Python
Django获取model中的字段名和字段的verbose_name方式
May 19 Python
python批量处理多DNS多域名的nslookup解析实现
Jun 28 Python
python opencv角点检测连线功能的实现代码
Nov 24 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
德生PL330测评
2021/03/02 无线电
PHP输出时间差函数代码
2013/01/28 PHP
php中的路径问题与set_include_path使用介绍
2014/02/11 PHP
ThinkPHP3.1新特性之字段合法性检测详解
2014/06/19 PHP
PHP中大括号'{}'用法实例总结
2017/02/08 PHP
学习ExtJS 访问容器对象
2009/10/07 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
2010/06/07 Javascript
Package.js  现代化的JavaScript项目make工具
2012/05/23 Javascript
原生Js页面滚动延迟加载图片实现原理及过程
2013/06/24 Javascript
面向对象设计模式的核心法则
2013/11/10 Javascript
单元选择合并变色示例代码
2014/05/26 Javascript
JS表格组件神器bootstrap table详解(强化版)
2016/05/26 Javascript
微信jssdk用法汇总
2016/07/16 Javascript
用js读写cookie的简单方法(推荐)
2016/08/08 Javascript
JS字符串false转boolean的方法(推荐)
2017/03/08 Javascript
原JS实现banner图的常用功能
2017/06/12 Javascript
React Native 图片查看组件的方法
2018/03/01 Javascript
Vue中使用的EventBus有生命周期
2018/07/12 Javascript
使用jQuery动态设置单选框的选中效果
2018/12/06 jQuery
原生JS实现萤火虫效果
2020/03/07 Javascript
VUE中V-IF条件判断改变元素的样式操作
2020/08/09 Javascript
Python2.7下安装Scrapy框架步骤教程
2017/12/22 Python
Python 矩阵转置的几种方法小结
2019/12/02 Python
Python3中小括号()、中括号[]、花括号{}的区别详解
2020/11/15 Python
CSS3 完美实现圆角效果
2009/07/13 HTML / CSS
HTML5 HTMLCollection和NodeList的区别详解
2020/04/29 HTML / CSS
军用级手机壳,专为冒险而建:Zizo Wireless
2019/08/07 全球购物
园艺专业毕业生求职信
2014/09/02 职场文书
2014购房个人委托书范本
2014/10/12 职场文书
全国爱牙日活动总结
2015/02/05 职场文书
2015年保洁工作总结范文
2015/04/28 职场文书
超市食品安全承诺书
2015/04/29 职场文书
《风筝》教学反思
2016/02/23 职场文书
这样写python注释让代码更加的优雅
2021/06/02 Python
使用CSS连接数据库的方式
2022/02/28 HTML / CSS
关于Vue中的options选项
2022/03/22 Vue.js