模块和异常捕获
一.模块
1.什么是模块:
python中一个py文件就是一个模块
2.怎么在一个模块中使用另外一个模块的内容:
(1)使用前提:如果想要在一个模块中使用另外一个模块中的内容,被使用的模块的模块名必须符合变量名的要求
(2)导入模块:
- import 模块名 —— 导入指定模块,导入后可以通过’模块名.xxx’的方式使用这个模块中的所有内容
- from 模块名 import 内容1,内容2,… —— 导入指定模块,导入后可以直接使用指定内容
如:from functools import reduce
- from 模块名 import * —— 导入指定模块,导入后可以直接使用模块中所有的内容
- import 模块名 as 新模块名 —— 导入指定模块后对模块进行重新命名
- from 模块名 import 内容1 as 新内容1 —— 对导入的内容进行重命名
二.包:
1.什么是包:
包含__init__.py文件的文件夹就是包
2.怎么使用包或者文件夹中的模块中的内容
(1)import 包名 —— ( 只适用于包)导入指定的包,导入后可以通过’包名.xxx’去使用包中(init.py)文件中所有的内容
(2)from 包名 import 模块名1,模块名2 —— (同时适用于文件夹和包)导入指定包中指定的模块,导入后可以通过’模块名.xxx’使用指定模块中的内容
(3)from 包名 import 内容1,内容2,… —— ( 只适用于包)导入指定包中__init__.py文件中的指定内容。
(4)import 包名.模块名 —— (同时适用于文件夹和包) 通过’包名.模块名.xxx’使用所有内容
(5)from 包名.模块名 import 内容1,内容2… —— (同时适用于文件夹和包)
三.异常捕获:
1.程序出现异常(报错)会直接让程序结束运行(在哪个位置出现的异常,程序就会在哪个地方结束)
2.异常捕获 —— 让程序在出现异常的时候程序部结束,还可以接着往后执行
(1)语法结构1: —— 捕获所有异常
try:
代码段1(需要捕获异常的代码)
except:
代码段2(出现异常后会执行的代码)
finally:
代码段3 (最后无论如何都会执行的操作)
执行过程:先执行代码段1,执行代码段1的时候如果没有出现异常,就不执行代码段2;如果出现异常,程序不报错并且马上执行代码段2
(2)语法结构2:(推荐使用) —— 捕获指定类型的异常
try:
代码段1(需要捕获异常的代码)
except 异常类型:
代码段2(出现异常后会执行的代码)
finally:
代码段3(最后无论如何都会执行的操作,就算报错了也会执行代码段3)
(3)语法结构3:同时捕获多种
try:
代码段1(需要捕获异常的代码)
except (异常类型,异常类型2,...):
代码段2(出现异常后会执行的代码)
finally:
代码段3
(4)语法结构4: —— 同时捕获多种
try:
代码段1
except 异常类型1:
代码段11
except 异常类型2:
代码段22
except 异常类型3:
代码段33
finally:
代码段4