""" 演示捕获异常 """ # 基本捕获语法 try: f=open("D:/abc.txt","r",encoding="utf-8") except: print("出现异常,将open的模式改为w模式去打开") f=open("D:/abc.txt","w",encoding="utf-8") # 捕获指定的异常 try: print(name) except NameError as e: print("出现了变量未定义的异常") # 捕获多个异常 try: 1/0 print(name) except (NameError,ZeroDivisionError) as e: print("出现了变量未定义的异常") # 未正确设置捕获异常类型,将无法捕获异常 # 捕获所有异常 try: f = open("D:/abc.txt", "r", encoding="utf-8") except Exception as e: print("出现异常了") else: print("good,没有异常") finally: print("不论是否有异常,我都要执行") f.close() 演示异常的传递性 定义一个出现异常的方法 def func1(): print("func1 开始执行") num=1/0 # 除以0的异常 print("func1 执行结束") # 定义一个无异常的方法 def func2(): print("func2 开始执行") func1() print("func2 执行结束") # 定义一个方法,调用上面的方法 def mian(): try: func2() except Exception as e: print(f"出现异常了,异常的信息是{e}") mian() # 演示Python的模块导入 # 使用import导入time模块使用sleep功能(函数) import time # 导入python内置的time模块(time.py这个文件) print("你好") time.sleep(5) # 通过,就可以使用模块内部的全部功能(类,函数,变量) print("我好") # 使用from导入time模块使用sleep功能(函数) from time import sleep print("你好") sleep(5) print("我好") # 使用 * 导入time模块的全部功能 from time import * # * 表示全部的意思 print("你好") sleep(5) print("我好") # 使用as给特定功能加上别名 import time as t print("你好") t.sleep(5) print("我好") from time import sleep as sl print("你好") sl(5) print("我好") """ 演示自定义模块 """ # 导入自定义模块使用 import my_module1 my_module.test(1,2) from my_module1 import test test(1,2) # 导入不同模块的自定义功能 from my_module1 import test from my_module2 import test test(1,2) # __main__变量 def test(a,b): print(a+b) if __name__=="__main__": test(1+2) # __all__变量 __all__=["test_a"] def test_a(a,b): print(a+b) def test_b(a,b): print(a-b) """ 演示创建Python包 """ # 创建一个包 #导入自定义的包中的模块 import my_package.my_module1 import my_package.my_module2 my_package.my_modoule1.info_print1() my_package.my_modoule1.info_print2() from my_package import my_modoule1 from my_package import my_modoule1 my_modoule1.info_print1() my_modoule1.info_print2() from my_package.my_modoule1 import info_print1() from my_package.my_modoule1 import info_print2() info_print1() info_print2() # 通过__all__变量,控制import* from my_package import * my_modoule1.info_print1() my_modoule1.info_print2()
异常,模块和包
最新推荐文章于 2024-10-12 12:26:23 发布