Chinaunix首页 | 论坛 | 博客
  • 博客访问: 204827
  • 博文数量: 236
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 2391
  • 用 户 组: 普通用户
  • 注册时间: 2020-08-10 06:35
文章分类
文章存档

2024年(21)

2023年(86)

2022年(53)

2021年(42)

2020年(34)

我的朋友

分类: Python/Ruby

2023-04-30 12:31:56

try的完全体
回忆上次内容

  • 上次细化了主控程序(main.py)
  • 导入(get_fruits.py)
  • 处理(process.py)
  • 输出(output.py)
  • 使用了 try 结构
  • try
  • except
  • 发现异常就报错
  • 输入部分的错误
  • 应该在 输入部分来报
  • 具体怎么报呢?????
完善输入

  • 输入的时候
  • 应该包括
  • 对于输入内容的验证
  • 于是 再修改代码

添加图片注释,不超过 140 字(可选)

  • 输入代码 分成了
  • 输入 a
  • 输入 b
运行结果

  • 如果 输入错误数据
  • 会在get_fruits.py中报错

添加图片注释,不超过 140 字(可选)

  • 如果 输入正确
  • 没有输出 确认信息

添加图片注释,不超过 140 字(可选)
继续修改

添加图片注释,不超过 140 字(可选)

  • 测试通过

添加图片注释,不超过 140 字(可选)

  • 这里面有个 else
  • 应该如何理解呢?
查询帮助

添加图片注释,不超过 140 字(可选)

  • 在游乐场帮助 里面有关于
  • try 的比较明确的介绍

添加图片注释,不超过 140 字(可选)
else

  • else的意思是否则
  • 就是没有发现异常时执行的
  • else 是一个可选(optional)子句
  • 如果try中发现了指定异常
  • 就从try中发现错误的位置跳出来
  • 只执行except部分
  • 不执行else部分
  • 如果try中没有发现指定的异常
  • 在执行完try中的内容之后
  • 不执行 except 部分
  • 只运行 else 部分

添加图片注释,不超过 140 字(可选)

  • 每个输入部分 都包括
  • 提示和输入
  • input(“xxx”)
  • 尝试转化为整型数字
  • try
  • int
  • 异常处理
  • except
  • 无异常输出
  • else
  • try 语句当中
  • 除了 else 之外
  • 还有 finally
综合一下

  • 这就是 try 的完全体

添加图片注释,不超过 140 字(可选)

  • 注意!
  • 都要有英文半角的冒号
  • 都要通过 4 个字符的缩进控制范围
finally

  • finally如果存在
  • 他是一个收尾的语句

添加图片注释,不超过 140 字(可选)

  • try 之后
  • 要么 except
  • 要么 else
  • 无论是except 还是 else
  • {BANNED}最佳后 总要执行finally
  • 如果执行过程中
  • 还有任何的异常
  • 但是这个异常没有被处理
  • 那么就把这个异常先存着
  • 等待finally执行之后
  • 再抛出这个异常
  • 如果遇到return break continue之类强制跳转语句
  • 这个异常就被忽略了
  • 这如何理解?
  • 新建一个test.py进行测试
理解finally

  • try里面有一个ValueError
  • 不执行后面的d = i / 0
  • 跳到except

添加图片注释,不超过 140 字(可选)

  • except中
  • 没有ValueError的处理办法
  • ValueError没有被处理
  • 于是ValueError就存着
  • 由于出现了异常
  • 已经进入了except
  • 无法进入else
  • {BANNED}最佳后进入finally执行
  • 输出了At Last
  • 执行外finally语句块
  • 才把这个ValueError{BANNED}最佳后抛出来

添加图片注释,不超过 140 字(可选)

  • 这就是finally的执行逻辑
  • 回到main.py
整体结构

  • 这个结构就是
  • 典型的面向过程程序设计方法

添加图片注释,不超过 140 字(可选)

  • 有一个主要的流程控制模块 main.py
  • 就像python语言这个声明
  • 有一个主要的决策者Guido一样
仁慈的独裁者

  • 彻底的仁慈
  • 意味着 没有主见和行动力下降
  • 彻底的独裁
  • 则会 失去广泛的帮助

添加图片注释,不超过 140 字(可选)

  • 仁慈和独裁像
  • 是矛盾的两面
  • 但是Guido却很好地平衡了两者
  • 除了Guido之外
  • 很多开源项目的老大
  • 也有类似的特性

添加图片注释,不超过 140 字(可选)

  • Guido是如何成长的呢?
扩展视野

  • Guido 利用假期去美国做一些WorkShop
  • 美国硅谷是当时it的潮头

添加图片注释,不超过 140 字(可选)

  • 很早接触到了
  • 互联网的发展趋势
互联网

  • Guido做了一个浏览器grail

添加图片注释,不超过 140 字(可选)
网络集聚

  • 网络的能量越来大
  • 这为python的发展做了很好的准备
  • 媒介
  • 从报纸、杂志、电视
  • 发展到邮件、论坛和浏览器

添加图片注释,不超过 140 字(可选)

  • 有人 就有 应用
  • 有应用 就更有 人
  • 于是会形成 正反馈
  • 有了社区 就会有更多的人 加入社区
  • 其实学编程 也是一样
  • 越熟练 就会越自信
  • 越自信 也就会越熟练
总结

  • 我们了解了 try 的完全体
  • try
  • 尝试运行
  • except
  • 发现异常时运行的代码块
  • else
  • 没有发现异常时运行的代码块
  • finally
  • 无论是否发现异常{BANNED}最佳终都要运行的代码块

添加图片注释,不超过 140 字(可选)

  • 发现导入部分
  • 可以再分为两个子模块
  • 一个输入 a
  • 一个输入 b
  • 可以再拆分么?????
  • 我们下次再说!????
  • 蓝桥->
  • github->
  • gitee->
阅读(279) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~