python基础-包的使用

    1.什么是包:

      包的本质就是文件夹,它由一个包含有__init__.py文件的文件加。

      包以及包下所有的文件都是用来被导入使用,没有一个文件是用来直接运行,

      因为包是模块的一中通用表现形式之一。----》from...import 和 import  使用

      

    2.为什么要有包?

      方便于集中管理,方便于使用者

    3.怎么用

      模块的使用一样。

      import 包名发生了什么事情?对比模块导入

      a.创建 p1 的名称空间

      b.执行p1下的__init__.py文件的代码,将执行过程中产生的名字都丢到p1名称空间中

      c.在当前执行文件中(调用者)拿到一个名字p1,p1指向__init__.py的名称空间。即原p1的名称空间

     4.包内模块:

      绝对导入:每次导入都是以最顶级包为起始开始查找。   搜索路径以执行文件的文件夹为基准。

      相对导入:相对于当前所在的文件,点.代表当前所在的文件目录,点点..代表上一级的目录。相对导入只能在被导入的模块中使用

      示例:

        

        执行文件run.py 导入m1模块

        做法:

          1.在p1模块的__init__.py导入m1模块

          2.执行文件是run.py 且m1不是内置模块,所以路径以执行文件的文件夹为基准

        __init__.py 文件  导入 m1模块

        

        run.py文件 导入 p1模块

        

      

    5.自定义模块导入的两种办法:

      a.import sys

       sys.path.append( r' 自定义模块绝对路径 ')

       import 自定义模块名

      b.以执行文件的文件夹为绝对路径  from  x import 自定义模块

             

      

posted @ 2019-04-08 10:50  不吃海带丝  阅读(183)  评论(0编辑  收藏  举报