3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)

2024-08-10
| 20页
| 224人阅读
| 4人下载
普通

内容正文:

情景三  优化程序的性能 任务 mission 1 2 3 4 函数 异常处理 面向对象程序设计 包与库 5 文件操作 2 任务三 异常处理 一.异常处理 1. 异常的概念 当我们在写Python代码的时候,或多或少都会遇到代码错误或者异常的情况,那异常与错误有什么区别呢? 异常是指不完整、不合法输入,或者计算出现错误(但这时的语法和逻辑是正确的);错误是指代码不符合解释器或者编译器语法要求。 当程序运行时,如果Python解释器遇到一个错误,会停止程序的执行并且提示一些错误信息,这就是异常。通常将程序停止执行并且提示错误信息这个动作称之为:抛出异常。在程序开发时,很难把所有的特殊情况都处理的面面俱到,通过异常捕获可以针对突发事件做集中的处理,从而保证程序的稳定性和健壮性。 4 二. 异常处理 2. 捕获异常  在程序开发中,如果对某些代码的执行不确定是否正确,可以增加try来捕获异常。try:尝试,下方编写要尝试的代码,不确定是否能正常执行的代码;except:如果不是,下方编写尝试失败的代码。 捕获异常的语法格式如下: try: 尝试执行的代码 except: 出现错误的处理方法 5 二. 异常处理 3. 常见异常 序号 异常名称 描述 1 AttributeError 对象没有这个属性 2 EOFError 没有内建输入,到达EOF 标记 3 IndexError 序列中没有该索引(index) 4 ImportError 导入模块/对象失败  5 IOError 输入/输出操作失败 6 KeyError 映射中没有该键 7 LookupError 无效数据查询的基类  8 NameError 未声明/初始化对象(没有属性) 9 OSError 操作系统错误 10 SyntaxError Python语法错误 11 TypeError 对类型无效的操作 12 TabError Tab 和空格混用 13 ValueError 传入的参数无效 14 WindowsError 系统调用失败 15 UnicodeError Unicode 相关的错误  16 ZeroDivisionError 除(或取模)零(所有数据类型) 三. 任务三 小结   通过本次任务的学习和实践,使我们了解了异常处理的功能和特点,掌握了常见异常名称和错误类型捕获的方法,养成良好的编程习惯;并且通过综合实训的引导,能够熟练捕获异常以及出现错误后的处理方法。实际上这和我们做人做事的道理是一样的,同学们要努力拓展知识的宽度和深度,面对同一个问题,多思考,多实践,多改进,多总结。没有做不到,只有想不到,这也是学无止境的道理。 7 任务四 包与库 一. 包与库 1. 什么是包  简单来说,包(package)就是一个文件夹,每个包目录中必须存在__init__.py文件,也就是装着__ init __.py文件的文件夹,该文件的内容可以为空。包是一个分层次的文件目录结构,是模块和子包的集合体。 2. 什么是库  库(library),是模块和包的集合,分为标准库、第三方库和自定义库;Python的标准库也称为Python内置库,是随着Python安装的时候默认自带的库,常用标准库如右表所示。 常用的标准库 序号 名称 功能描述 1 os 操作系统管理 2 sys 解释器交互 3 shutil 文件管理 4 math 数学常数和数学函数 5 random 随机数 6 datetime 日期和时间 7 time 时间访问和转换 8 json JSON编码和解码 9 glob 查找文件 10 urllib http访问 9 一. 包与库 3. 包的使用  首先打开PyCharm,在当前项目(D:\py)上单击右键,选择“New”,在弹出的子菜单中选择创建“Python package”,输入包名“cqcvc”后回车确定即可;紧接着鼠标右键单击该包名,创建三个py文件分别是__init__.py、div.py和leapyear.py。 10 一. 包与库 4. 导入包 (1)import 包名[.模块名 [as 别名]] (2)from 包名 import 模块名 [as 别名] (3)from 包名.模块名 import 成员名 [as 别名] 11 二. 标准库  在常用标准库中有一个操作文件和文件夹的os库,它提供通用的、基本的操作系统交互功能,主要有:系统相关变量和操作、文件和目录相关操作、执行命令和管理进程,使用print( dir(os) )可以发现,os标准库包含了丰富的函数。 os标准库还包含了一个path子模块,该子模块主要提供了丰富的路径操作方法,处理文件路径及信息等操作。 12 三. 第三方库 1. NumPy  NumPy是Python的一种开源的数值计算扩展,提供了矩阵运算的功能,其一般与Scipy、matplotlib一起使用,可用来存储和处理大型矩阵,比Python自身的嵌套列表结构要高效。 2. matplotlib  matplotlib是一个python 2D绘图库,利用它可以画出许多高质量的图像,开发者仅需要几行代码,便可以生成直方图,条形图,饼图,散点图等。 13 四. 任务四 小结   通过本次任务的学习和实践,使我们了解了包与库的区别和特点,掌握了如何创建包和导入包的三种方法,并且通过综合实训的引导,能够熟练运用标准库大幅提高程序开发的效率;能够安装和使用第三方库完成特定功能的实现。 功能强大的第三方库,可以让开发者站在巨人的肩膀上工作,将重要工作由造轮子变成了找轮子,而一个好的轮子有以下特殊:开源、低耦合、有开发文档、接口友好、社区相对活跃等。为了找到好轮子,需要同学们具备信息检索能力、外文资料阅读能力和代码阅读能力以及平时的经验积累。正所谓:“不积跬步无以至千里,不积小流无以成江海”。 14 任务五 文件操作 一. 文件的打开与关闭 1. 文件的打开 打开文件使用open内置函数来实现,open底层调用的是操作系统的接口;打开文件可以使用open 和with open两种方式来完成,具体格式如下。 f1 = open(文件名,读写模式,encoding='utf-8') with open(文件名,读写模式,encoding='utf-8') as f2: 序号 读写模式 描述 1 ‘r’ 以只读方式打开文件(默认方式) 2 ‘w’ 以只写方式打开文件(打开时清空文件) 3 ‘a’ 打开文件,在文件末尾添加数据 4 ‘rb’ 以只读方式打开二进制文件 5 ‘wb’ 以只写方式打开二进制文件 6 ‘ab’ 以添加方式打开二进制文件 7 ‘+’ 放在上面模式后,设置读写模式 16 一. 文件的打开与关闭 2. 文件的关闭 文件使用完后,切记要使用close函数关闭已打开的文件。即使文件会在程序退出后自动关闭,但是考虑到数据的安全性,在每次使用完文件后,都要使用close函数关闭文件,否则一旦程序崩溃,很可能导致文件中的数据没有保存。 f1.close( ) 17 二. 读文件和写文件 1. 读文件 可以用read( )、readline( )和readlines( )来读取文件的内容。 (1) read( ):一次性读取文件中的数据,可选参数size,用于控制读取文件的字节数, 如果省略表示一次性全部内容。 (2) readline( ) 每次读取文件的一行数据,如果给定了size,有可能只返回一行的部分内容,以字符串的形式返回,并在结尾会有一个换行符‘ ’。 (3) readlines( )一次读取整个文件,并自动将文件内容分析成一个行的列表。 18 二. 读文件和写文件 2. 写文件 向打开的文件写入数据的函数有两个,分别是:write( )、writelines( )。 (1) write( ):该函数用来将文本字符串写入已经创建的文件中。 (2) writelines ( ):该函数把对象中的多个字符串一次性全部写到文件中。需要注意的是,序列中的内容也必须是字符串类型才可以。 19 三. 任务五 小结   通过本次任务的学习和实践,使我们了解了编码格式和文件读写模式,掌握了文件打开和关闭的方法;并且通过综合实训的引导,能够根据实际需求熟练运用read( )、readline( )和readlines( )来读取文件,通过 write( )和writelines( )来写文件。最后通过强化训练将本次“文件操作”应用和上一次“包与库”的应用联系起来协同完成,起到了巩固拓展、举一反三的目的。 20 $$

资源预览图

3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
1
3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
2
3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
3
3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
4
3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
5
3.3异常处理(课件)-《程序设计基础(Python)》同步教学(电子工业出版社)
6
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。