python学习(十三)模块、包和异常

本文介绍了Python中的模块和包的概念及使用方式,包括导入模块的多种方式、模块导入原理及阻止导入的技巧。同时,详细阐述了包的结构和__init__.py的作用。此外,还探讨了异常捕获的重要性,如何通过try-except语句处理异常,以及如何主动抛出异常。内容涵盖Python编程的基础知识,旨在提升代码组织和错误处理能力。
摘要由CSDN通过智能技术生成

1.模块

  1. python 中一个.py文件就是一个模块

  2. 模块分为系统模块自定义模块两种

    1. 系统模块:python自带的模块 .例如:functools、math、 random、re、time、datatime等
    2. 自定义模块:由程序员自己创建的模块
  3. 导入模块

    1. 如果我们想要使用的内容(变量、函数、类)在另外一个模块中,可以使用,但是需要先导入
    2. 一个模块中的内容想要能被其他模块使用的前提:模块名必须符合变量名的要求(是标识符、不是关键字)
  4. 导入模块

    1. import 模块名 – 导入指定模块,导入后可以通过模块名.的方式使用,可以是使用模块中的所有全局变量
    2. from 模块名 import 变量名1, 变量名2,..... ---- 导入指定模块,导入后可以直接使用,未导入的不能使用
    3. from 模块名 import * ---- 导入指定模块,导入后可以直接使用模块中的所有全局变量
    4. import 模块名 as 新模块名 — 重命名
      from 模块名 import 变量名1. 变量名2 as 新变量名2
  5. 导入原理

    1. 不管是通过import直接导入模块,还是通过from-import导入模块中的变量,原理都是进入指定的模块,将模块中的代码全部执行一遍
  6. 阻止导入
    在被导入的模块中添加指定的if语句(main提示的if语句 ),将不需要被别的模块执行的代码放到这个if语句中;

    if __name__ == '__main__':
       需要被阻止导入的代码    
    

2.包

  1. 包含__init__.py文件的文件夹就是包
  2. 导包
    • import 包.模块:使用时使用包.模块.变量或者将包.模块进行重命名
    • from 包 import 模块:直接使用模块.变量使用

3.__init__.py

  1. 创建快捷键:可以将包中的常用的方法进行导入,然后创建快捷键,在外部可以直接使用from 包名 import 变量
  2. 封装通用功能:将通用功能代码封装进__init__.py 文件中 ,使用时直接导入包就可以使用,包名.变量

4.异常捕获

  1. 异常就是错误:(程序报错 == 程序出现异常);如果执行程序的过程中出现异常,程序就会结束,不会再接着往后执行
  2. 异常捕获:让程序在出现异常的时候程序不报错,并且可以继续执行
    • 什么时候需要异常捕获:知道某段代码可能会出现异常,但是出现异常的原因不是代码错误,而是使用者操作不当导致的,又不想因此导致程序崩溃,就可以使用异常捕获
    •   # 捕获所有异常
        try:
          (代码段1):需要捕获异常的代码块
        except:
          (代码段2):捕获到异常之后会执行的操作
        
          # 捕获指定异常类型
        try:
          (代码段1):需要捕获异常的代码块
        except 异常类型:
          (代码段2):捕获到异常之后会执行的操作
          
          # 同时捕获多种异常,对多个异常做相同处理
        try:
          (代码段1):需要捕获异常的代码块
        except (异常类型1,异常类型2,异常类型3,...):
          (代码段2):捕获到异常之后会执行的操作
      
          
          # 同时捕获多种异常,对多个异常做不同处理
        try:
          (代码段1):需要捕获异常的代码块
        except 异常类型1:
          (代码段2):捕获到异常之后会执行的操作
        except 异常类型2:
          (代码段3):捕获到异常之后会执行的操作
        except 异常类型3:
          (代码段4):捕获到异常之后会执行的操作
      
    • 先执行代码段1.执行过程中如果出现异常不报错,马上执行代码段2,然后在执行后续的代码;如果代码段1中没有异常,不执行代码段2,直接执行后续代码
  3. 抛出异常 – 主动让程序崩溃
    raise + 异常类型;可定制异常类型
class 异常类型(Exception):
    def __str__(self):
        return '抛出异常的提示信息'

	代码块:
    raise 异常类型
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

乌拉的故事

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值