当前位置:   article > 正文

Python学习笔记--异常、模块与包

Python学习笔记--异常、模块与包

(一) 了解异常


1. 异常
程序运行的过程中出现了错误
2. bug
bug就是指异常的意思,因为历史是因为小虫子导致计算机失灵的案例,所以延续至今,bug就代表软件出现错误

  1. """
  2. 例如打开一个不存在的文件
  3. """
  4. f=open("D:/LINUX.txt","r",encoding="UTF-8")


(二) 异常的捕获方法


1. 程序出现bug后的情况


程序因为一个bug停止运行
对bug进行提醒·,整个程序继续运行


2. 为什么要捕获异常?


在可能发生异常的方法,进行捕获,当出现异常时,提供解决方式,而不是任由其导致程序无法运行
作用:提前假设某处会出现异常,做好提前准备,当真的出现异常的时候,可以有后续手段

  1. """
  2. 演示捕获异常
  3. """
  4. #基本捕获语法
  5. try:
  6. f=open("C:/Users/cs/Desktop/LINUX.txt","r",encoding="UTF-8")
  7. except:
  8. printf("出现异常了,因为文件不存在,我将open的模式改为w的模式")#因为读不到的话 我改为w模式就可以写入这个不存在的文件,就可以读到了
  9. f=open("C:/Users/cs/Desktop/LINUX.txt","w",encoding="UTF-8")
  10. #捕获指定异常
  11. try:
  12. print(name)
  13. except NameError as e: #这里的e是异常对象,可以用printf(e)表示出来
  14. printf("出现了变量未定义的异常")
  15. #捕获多个异常
  16. try:
  17. 1/0
  18. except (NameError, ZeroDivisionError)as e:
  19. printf("出现了变量未定义或者除以0的异常错误")
  20. #未设置捕获异常类型,将无法捕获异常
  21. #捕获所有异常
  22. try:
  23. 1/0
  24. except Exception as e: #这句等价于 except:
  25. printf("出现异常了")
  26. else:
  27. print("好高兴,没有异常")
  28. finally:
  29. print("finally表示的是无论是否异常都要执行的代码,例如关闭文件。")
  30. f.close()
  31. #其中else finally是可选择的 可以不写


(三) 异常综合案例

异常的传递性

  1. def func1():
  2. print("func1开始执行")
  3. num = 1/ 0#肯定有异常,除以0的异常
  4. print("func1结束执行")
  5. #定义一个无异常的方法,调用面的方法
  6. def func2():
  7. print("func2开始执行")
  8. func1()
  9. print("func1开始执行")
  10. #定义一个方法,调用上面的方法
  11. def main():
  12. try:
  13. func2()
  14. except Exception as e:
  15. print(f"出现异常了,异常的信息是;{e}")
  16. main()
  17. # main会调用func2,func2会调用func1,此时func1中出现了除0异常,
  18. # 于是就会抛到func2,func2又会被main函数调用,,所以异常是有传递性的


(四) Pyhton模块

  1. """
  2. 演示Python的模块导入
  3. """
  4. # 1.使用import导入time模块使用sleep功能(函数)
  5. import time #导入Python内置的time模块(time.py这个代码文件)
  6. print("你好")
  7. time.sleep(5) #通过.就可以使用模块内部的全部功能(类、函数、变量)
  8. print("我好")
  9. # 2.使用于from导入time的sleep功能(函数)
  10. from time import sleep
  11. print("你好")
  12. sleep(5)
  13. print("我好")
  14. # 3.使用*导入time模块的全部功能
  15. from time import *
  16. print("你好")
  17. sleep(5)
  18. print("我好")
  19. # 4.使用as给特定功能加上别名
  20. import time as t
  21. print("你好")
  22. t.sleep(5)
  23. print("我好")
  24. # 或者
  25. # from time import sleep as sl
  26. # print("你好")
  27. # sl(5)
  28. # print("我好")

自定义模块

  1. """
  2. 演示自定义模块
  3. """
  4. # 导入自定义模块使用
  5. import my
  6. my.test(1,2)
  7. # 或者用from
  8. from my import test
  9. test(1,2)

  1. """
  2. 演示自定义模块
  3. """
  4. # 导入不同模块的同名功能
  5. from my import test
  6. from my1 import test # my1里面是a-b
  7. test(1,2) #只用了my1


(五) Python包

 

(六) 安装第三类Python包

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小蓝xlanll/article/detail/166921
推荐阅读
相关标签
  

闽ICP备14008679号