演示with...as...操作
path=r'kaifanglist1.txt'
with open(path,'r',encoding='utf-8') as fr:
print(fr.read())
注意事项:

1).将可能出现异常的代码定义到try语句中(try可以认为是扫描器),

但是它是不具备处理异常的能力

2).一旦try中出现了异常对象(自动、手动),第一个except会尝试去捕获它(捕获器),

如果类型匹配,则捕获成功,对象即被处理,然后会顺势去执行except中的内容(逻辑代码),

如果类型不匹配,则捕获失败,那么程序会继续去匹配下一个捕获器...

3).将一定需要被执行的代码放入到finally语句中,finally的特点:一定会被执行;

例如:关闭文件、关闭数据库连接...

4).with语句(python的语法糖),可以帮助我们自动关闭文件

5).如果try中没有出现异常,那么else语句一定会被执行;反之,不会被执行

6).人为手动去抛出异常对象,使用raise关键字;格式:raise 异常类型(异常信息)

7).如果except后面定义的类型是Exception,那么此捕获器必须定义在最后位置(小的在前,大的在后)

8).except后面可以定义一个元祖对象,同时接受多个异常类型作为其元素,那么它就具有捕获多种异常类型对象的能力

9).except后面不定义任何异常类型,那么其可以认为是Exception的简化版

10).捕获器(except)不具备捕获处理语法错误这样的现象

11).常见的运行时异常类型:TypeError、IndexError、FileNotFoundError...

【注意】异常并没有学完,还有自定义异常类需要在面向对象学习过程中(继承学完)在进行讲解

总结:异常处理就主要学习掌握5个关键字:try、except、finally、else、raise

python第三十课--异常(with as操作)的更多相关文章

  1. python第三十课--异常(异常对象传递过程)

    演示异常对象传递的过程(往上“抛”),并将其解决 def func1(): print('func1...') print(10/0) def func2(): print('func2...') t ...

  2. python第三十课--异常(raise关键字)

    演示: 1.手动抛出异常对象-->raise关键字 2.try-except代码不能解决语法错误 try: print('try...') raise TypeError('类型有误的异常') ...

  3. python第三十课--异常(异常处理定义格式和常见类型)

    演示: 1).异常处理的定义格式: 2).常见的运行时异常类型: try: print(10/0) num=int('132a') except Exception as e: print('出错了. ...

  4. python第三十课--异常(else讲解)

    演示else语句和异常处理机制结合使用 try: print('try...') print(10/0) except: print('except...') else: print('else... ...

  5. python第三十课--异常(finally讲解)

    演示:finally语句的作用 try: fr="" path=r'kaifanglist1.txt' fr=open(path,encoding='utf-8') print(f ...

  6. 孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容

     孤荷凌寒自学python第三十五天python的文件操作之针对文件操作的os模块的相关内容 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 一.打开文件后,要务必记得关闭,所以一般的写法应当 ...

  7. NeHe OpenGL教程 第三十课:碰撞检测

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  8. python第三十一课--递归(2.遍历某个路径下面的所有内容)

    需求:遍历某个路径下面的所有内容(文件和目录,多层级的) import os #自定义函数(递归函数):遍历目录层级(多级) def printDirs(path): dirs=os.listdir( ...

  9. Python进阶(三十五)-Fiddler命令行和HTTP断点调试

    Python进阶(三十五)-Fiddler命令行和HTTP断点调试 一. Fiddler内置命令   上一节(使用Fiddler进行抓包分析)中,介绍到,在web session(与我们通常所说的se ...

随机推荐

  1. 提供PPT嵌入Winform/WPF解决方案,Winform/WPF 中嵌入 office ppt 解决方案

    Winform/WPF 中嵌入 office ppt(powerpoint)解决方案示: 1. 在winform中操作ppt,翻页.播放.退出:显示 总页数.当前播放页数 2. 启动播放ppt时录制视 ...

  2. ApplicationListener用法

    ApplicationListener是spring提供的接口,作用是在web服务器启动时去加载某些程序. 用法: 1.实现ApplicationListener接口,并重写onApplication ...

  3. EF CodeFirst(三) 并发处理

    并发分为两种,一种叫做悲观并发,一种叫乐观并发. 名字挺文艺 悲观并发 悲观并发是什么呢? 就拿我们常用的代码版本控制来说. 有一个文档,A和B都要 获取这个文档并进行修改, 如果当A在读取这个文档数 ...

  4. jQuery通用的全局遍历方法$.each()用法实例

    1.jQuery通用的全局遍历方法$.each()用法 2. test.json文件代码: 3. html代码 4.jQuery代码 <script src="jquery-1.3.1 ...

  5. 5月23日——谈谈对BFC规范的理解

    一.什么是BFC? BFC(block  formatting context):简单来说它就是一种属性,这种属性会影响元素与元素之间的位置.间距 二.形成BFC的条件 1.float:给元素添加浮动 ...

  6. org.springframework.web.util.NestedServletException Handler processing failed; n

    因为谷歌的lists不支持或使用, 所有要改成java的list工具 谷歌list使用: import com.google.common.collect.Lists; .... Lists.newA ...

  7. 退役前的最后的做题记录upd:2019.04.04

    考试考到自闭,每天被吊打. 还有几天可能就要AFO了呢... Luogu3602:Koishi Loves Segments 从左向右,每次删除右端点最大的即可. [HEOI2014]南园满地堆轻絮 ...

  8. vs2015 停 在 update kb2999226 一直不动

    查找原因是因为装微软补丁,官网找到该补丁安装 Update for Windows 7 for x64-based Systems (KB2999226) https://www.microsoft. ...

  9. objc与鸭子对象(上)

    这是<objc与鸭子对象>的上半部分,<objc与鸭子对象(下)>中介绍了鸭子类型的进阶用法.依赖注入以及demo. 我是前言 鸭子类型(Duck Type)即:“当看到一只鸟 ...

  10. MediaPlayer音乐播放器、上一首、下一首、播放、停止、自动下一首、进度条

    本文介绍MediaPlayer的使用.MediaPlayer可以播放音频和视频,另外也可以通过VideoView来播放视频,虽然VideoView比MediaPlayer简单易用,但定制性不如用Med ...