详解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使用正则表达式分析网页中的图片并进行替换的方法
Mar 26 Python
Python 基础教程之包和类的用法
Feb 23 Python
python中使用%与.format格式化文本方法解析
Dec 27 Python
详解django自定义中间件处理
Nov 21 Python
python如何获取当前文件夹下所有文件名详解
Jan 25 Python
libreoffice python 操作word及excel文档的方法
Jul 04 Python
Python操作多维数组输出和矩阵运算示例
Nov 28 Python
Python基于WordCloud制作词云图
Nov 29 Python
Python中Subprocess的不同函数解析
Dec 10 Python
使用Python-OpenCV消除图像中孤立的小区域操作
Jul 05 Python
python 对xml解析的示例
Feb 27 Python
Python用any()函数检查字符串中的字母以及如何使用all()函数
Apr 14 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 Undefined index报错的修复方法
2011/07/17 PHP
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
一个简单的瀑布流效果(主体形式自写)
2013/05/27 Javascript
drag-and-drop实现图片浏览器预览
2015/08/06 Javascript
详解javascript中原始数据类型Null和Undefined
2015/12/17 Javascript
JavaScript实现页面无操作倒计时退出
2016/10/22 Javascript
实现easyui的datagrid导出为excel的示例代码
2016/11/10 Javascript
JavaScript中关于iframe滚动条的去除和保留
2016/11/17 Javascript
详解用原生JavaScript实现jQuery的某些简单功能
2016/12/19 Javascript
详解最新vue-cli 2.9.1的webpack存在问题
2017/12/16 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
vue将毫秒数转化为正常日期格式的实例
2018/09/16 Javascript
脚手架vue-cli工程webpack的作用和特点
2018/09/29 Javascript
vuex+axios+element-ui实现页面请求loading操作示例
2020/02/02 Javascript
VueX模块的具体使用(小白教程)
2020/06/05 Javascript
8个非常实用的Vue自定义指令
2020/12/15 Vue.js
打开电脑上的QQ的python代码
2013/02/10 Python
python实现通过shelve修改对象实例
2014/09/26 Python
Python类的专用方法实例分析
2015/01/09 Python
python使用in操作符时元组和数组的区别分析
2015/05/19 Python
Python功能键的读取方法
2015/05/28 Python
Python 通配符删除文件的实例
2018/04/24 Python
Tensorflow模型实现预测或识别单张图片
2019/07/19 Python
Python实现一个数组除以一个数的例子
2019/07/20 Python
关于Python中的向量相加和numpy中的向量相加效率对比
2019/08/26 Python
利用keras加载训练好的.H5文件,并实现预测图片
2020/01/24 Python
html5使用window.postMessage进行跨域实现数据交互的一次实战
2021/02/24 HTML / CSS
德国著名廉价网上药店:Shop-Apotheke
2017/07/23 全球购物
Subside Sports德国:足球球衣和球迷商品
2019/06/08 全球购物
一篇.NET面试题
2014/09/29 面试题
30岁生日感言
2014/01/25 职场文书
爱国演讲稿400字
2014/05/07 职场文书
2015年统战工作总结
2015/05/19 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
Python3.8官网文档之类的基础语法阅读
2021/09/04 Python
详解JS数组方法
2021/11/20 Javascript