详解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 探针的实现原理
Apr 23 Python
Python的shutil模块中文件的复制操作函数详解
Jul 05 Python
Python的mysql数据库的更新如何实现
Jul 31 Python
python中子类调用父类函数的方法示例
Aug 18 Python
Django中url的反向查询的方法
Mar 14 Python
python 读文件,然后转化为矩阵的实例
Apr 23 Python
对PyTorch torch.stack的实例讲解
Jul 30 Python
Python QQBot库的QQ聊天机器人
Jun 19 Python
Python 使用元类type创建类对象常见应用详解
Oct 17 Python
python批量修改交换机密码的示例
Sep 22 Python
python字符串的多行输出的实例详解
Jun 08 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和数据库结合的一个简单的web实例 代码分析 (php初学者)
2011/07/28 PHP
php利用事务处理转账问题
2015/04/22 PHP
PHP+mysql+ajax轻量级聊天室实现方法详解
2016/10/17 PHP
php有效防止图片盗用、盗链的两种方法
2016/11/01 PHP
PHP大文件分割分片上传实现代码
2020/12/09 PHP
javascript中声明函数的方法及调用函数的返回值
2014/07/22 Javascript
禁止iframe页面的所有js脚本如alert及弹出窗口等
2014/09/03 Javascript
浅谈Javascript变量作用域问题
2014/12/16 Javascript
jQuery插件实现无缝滚动特效
2015/11/24 Javascript
jQuery中Find选择器用法示例
2016/09/21 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
详解Vue项目编译后部署在非网站根目录的解决方案
2018/04/26 Javascript
vue+axios实现post文件下载
2019/09/25 Javascript
Node中对非阻塞I/O、事件循环的知识点总结
2020/01/05 Javascript
JavaScript数组排序小程序实现解析
2020/01/13 Javascript
详解node.js 事件循环
2020/07/22 Javascript
在Debian下配置Python+Django+Nginx+uWSGI+MySQL的教程
2015/04/25 Python
Django中使用locals()函数的技巧
2015/07/16 Python
Python中线程的MQ消息队列实现以及消息队列的优点解析
2016/06/29 Python
Python中Django发送带图片和附件的邮件
2017/03/31 Python
python使用turtle库绘制时钟
2020/03/25 Python
wxPython实现列表增删改查功能
2019/11/19 Python
python中字典增加和删除使用方法
2020/09/30 Python
Python reversed反转序列并生成可迭代对象
2020/10/22 Python
一款利用纯css3实现的超炫3D表单的实例教程
2014/12/01 HTML / CSS
html标签之Object和EMBED标签详解
2013/07/04 HTML / CSS
应用艺术毕业生的自我评价
2013/12/04 职场文书
幼儿园门卫制度
2014/01/29 职场文书
大学生通用个人的自我评价
2014/02/10 职场文书
中职生自荐信范文
2014/06/15 职场文书
幼师小班个人总结
2015/02/12 职场文书
中学教师师德师风承诺书
2015/04/28 职场文书
2015年教师学期工作总结
2015/04/30 职场文书
Nginx的反向代理实例详解
2021/03/31 Servers
python用字节处理文件实例讲解
2021/04/13 Python
mysql在项目中怎么选事务隔离级别
2021/05/25 MySQL