异常
语法
try:
可能会错误的代码
except:
出现了异常,异常处理
else:
没有出现异常,处理,通常可以不写
finally:
无论有无异常,都运行
实例:
try:
f = open("e:/a.txt","r",encoding="UTF-8") # 文件不存在,不可度,会有异常
except FileNotFoundError as e:
print(f"发现\t{e}\t异常,进行处理")
f = open("e:/a.txt","w",encoding="UTF-8")
else:
print("没有任何异常")
finally:
print("执行文件关闭")
f.close()
异常的传递性
在一个方法发生异常时,调用它的方法们都会报异常,try处理调用方法的方法一样有效。
实例:
def fun1():
print("fun1执行")
mum = 1 / 0
def fun2():
print("fun2执行,调用fun1")
fun1()
def main():
try:
print("main执行,调用fun2")
fun2()
except Exception as e:
print(f"发现异常{e}")
main()
异常总结
模块
模块导入
import 导入模块名,调用语法:模块名.方法名
import time
print("hello")
time.sleep(4)
print("world")
from 模块 import 方法名,调用语法:方法名
(只能用模块中的这一个方法)
from time import sleep
print("hello")
sleep(4)
print("world")
from 模块 import *,调用语法:方法名
(可以用模块中的所有方法)
from time import *
print("hello")
sleep(4)
print("world")
as给import后的导入内容区别名
# 自定义模块
from my_moudle1 import add1 as a
# # 假如还有一个模块里还有一个add则会覆盖前一个
# from my_moudle2 import add as a
print(a(1, 2))
第三方包
模块和包总结