python包

包的定义:

包就是一个包含有init.py文件的文件夹
包本质就是一种模块,即包是用包导入使用的,包内部包含的文件也都是用来被导入使用

为何要用包:

包是文件夹,那文件夹就是用来组织文件的

首次导入包,发生三件事,

  1. 1
    2
    3
    1. 以包下的__init_.py文件为基准来产生一个名称空间
    2. 执行包下的__init_.py文件的代码,将执行过程中产生的名字都丢到名称空间中
    3. 在当前执行文件中拿到一个名字p1,该p1就是指向__init__.py名称空间的

总结包的使用无非注意三点:

  1. 1
    2
    3
    4
    5
    6
    7
    8
    1. 但凡是在导入语句中带点的,点的左边都必须是一个包
    2. 导入包就是在导包下的__init__.py文件
    3. 如果使用绝对导入,绝对导入的起始位置都是以包的顶级目录为起始点
    4. 但是包内部模块的导入通常应该使用相对导入,用.代表当前所在的文件(而非执行文件),..代表上一级
    强调:
    5. 相对导入只能包内部的模块之间互相导入使用
    6. ..上一级不能超出顶级包
    3.执行文件不能在包内,一定要在顶级包外
图灵python大海老师 wechat
python分享公众号
坚持原创技术分享,您的支持将鼓励我继续创作!