异常

基本捕获语法

try:

​ 可能发生错误的代码

expect:

​ 如果出现异常执行的代码

捕获指定异常

try:

​ 可能发生错误的代码

expect 异常名 as 变量名(任意,如a,c):

​ 如果出现异常执行的代码

获取多个异常

try:

​ 可能发生错误的代码

expect (异常名1,异常名2) as 变量名(任意,如a,c):

​ 如果出现异常执行的代码

获取全部异常

try:

​ 可能发生错误的代码

expect Exception as 变量名(任意,如a,c):

​ 如果出现异常执行的代码

else & finally

else:如果没有异常时要执行的代码

finally:有没有异常都会执行的代码

try:

​ 可能发生错误的代码

expect Exception as 变量名(任意,如a,c):

​ 如果出现异常执行的代码

else:

​ ……

finally:

​ ……

导入模块

模块就是一个python文件以.py结尾,里面有类,函数,变量等,可以直接拿过来用

格式:

[from 模块名] import [模块 / 类 / 变量 / 函数 / *] [as 别名] (“[]”为可写可不写)

import

如import time 可以引用time模块,其中有sleep可以让代码延时运行

如time.sleep(5)让代码睡5秒后在运行

from 模块名 import 功能名

因为模块中不是所有的方法都会用到,所以用from来提取想要的功能

功能名(),这样即可使用

from 模块名 import *

意思是把模块中的所有功能都导进来

import 功能名 as 别名

给模块起别名的效果

如 import time as qq

qq.time(5)

自定义模块

  1. 新建一个.py文件,命个名,并定义方法
  2. 在另一个文件中import该文件即可使用

不过当引用自定义模块的时候,会直接运行自定义模块,对于测试类是不需要的,但是又想测试自定义模块,那么可以在自定义模块中输入main加回车 生成“if __ name __ == ‘__ main __ ’”:

再把需要测试的代码放在后面,这样既不影响自定义模块的测试,也不会干扰测试类

image-20250703100410459

原理

__ name __其实是一个内置变量,当运行自定义模块时,name会变成main,满足if条件后运行后续代码

而在import自定义模块时,name不变,便运行不了

__ all __

如果模块中有__ all __变量,当使用from xxx import **