黑马程序员|8天Python第9章异常,模块,包

一 什么是异常

异常就是程序运行的过程中出现了错误

bug 就是指异常的意思,因为历史因为小虫子导致计算机失灵的案例,所以延续至今,bug 就代表软件出现错误。 



二 异常的捕获方法

1.为什么要捕获异常

在可能发生异常的地方,进行捕获。当异常出现的时候,提供解决方式,而不是任由其导致程序无法运行。

2.捕获异常的方法

3.如何捕获常规异常

这个基本的语法也可以捕获全部的异常。 

4.如何捕获指定异常

异常有很多种类型

NameError 是异常类型。

通过 as 设置一个别名,将异常作为一个对象取到,可以打印这个 e ,记录着异常的具体信息。

5.如何捕获多个异常

6.捕获异常并输出描述信息

7.捕获所有异常

父类引用指向子类实例,这里Exceptione是父类引用,抛出的异常是子类实例。

8.异常else

9.异常的finally

finally下有异常就需要在finally中嵌套try捕捉。 

也可以不用finally,直接取消缩进跳出异常捕获结构,进而表示无论如何都要执行的代码。


三 异常的传递

1.什么是异常的传递性

不用去找到底是哪句话错了,只要在最后的地方捕获到就好了。

 

 传递上去。



四 Python 模块

1.模块的导入

什么是模块

模块就是一个 Python 代码文件,.py结尾,内含类、函数、变量等,我们可以导入进行使用。

time模块就是time.py。

ctrl + 左键进入这个文件。ctrl + f 搜索。

模块的导入方式

. 表示层级关系。time . sleep 表示sleep属于time里面。 

通过模块. 去使用里面的类,函数,变量。

 只能用sleep。

这两个只是写法不一样。

import time 的使用要. 这个的使用直接sleep()

给具体的模块或功能改名。 

注意

2.自定义模块

为什么自定义模块

如何自定义模块

模块化编程,方便程序移植和更改,提高可读性。

 测试模块

在模块代码里面写text()是为了测试代码是否可以正确运行,但是在外面文件想导入这个模块的时候, 不想执行测试的那行代码。就用—main—变量解决。

python有一个内置变量叫—name—,在模块里面运行的时候这个—name—变量会被标记为—main—,然后这个 == 判断就为 True。

当从外面导入这个模块的时候,这个—name—(内置变量)的结果就不是—main —了。进不去if ,所以不会执行测试的代码。

也就是只在当前文件中调用该函数,其他导入的文件内不符合该条件,则不执行test函数调用。

——all—— 

import * 这个 * 代表所有,但是这个所有来自—all—变量的定义,如果不写这个all就是所有都可以用。all 只作用在 * 上,但是可以手动导入 text_B。

注意 

模块2的 my_test 。


五 Python 包

1.自定义包

为什么有python包

什么是python包

包就是一个文件夹,里面可以存放许多Python 的模块(代码文件)通过包,在逻辑上将一批模块归为一类,方便使用。

 

模块是文件(.py),包是文件夹。

_init_.py 文件的作用


创建包会默认自动创建的文件,通过这个文件来表示一个文件夹是Python 的包,而非普通的文件夹。只要这个文件在这个文件夹里面,那这个文件夹就是python包。如果没有这个文件,那这个文件夹就只是一个普通的文件夹。

如何创建python包

如何导入python包

 

不推荐 import my_package  导入文件夹干啥,最少也要导入个具体的文件。

 

 _all_变量的作用:

同模块中学习到的是一个作用,控制 import* 能够导入的内容 。

2.第三方包

什么是第三方包

第三方包就是非 Python 官方内置的包,可以安装它们扩展功能,提高开发效率。

如何安装第三方包

 

使用pip如何网络优化

 


六 综合案例

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值