模块和包

什么是模块?

    py文件就是一个模块

   分类

         系统模块(标准库)

         第三方模块  (需要下载pip3     install   模块名字)

          用户自定义模块      (自己写的py文件)

     模块的作用

              实现功能的重复利用,提高代码的效率

               把相似功能放到一个文件,永久保存

   模块的导入方式

         import...

         from.....import....

   import做了什么

          执行导入模块的代码

          创建模块的命名空间

           把模块的命名空间中的变量,方法引入

      注意的问题 

            模块不会被重复导入

            避免循环导入

       模块的查找顺序

              自己所在的目录下

               内置空间

                sys.path

  sys.modules

              导入模块后存入的字典(第一个元素是模块当前路劲)

   sys.path     模块路径         列表

   as    关键字

         给复杂模块起别名,方便使用

       if   __name__==‘__main__':#快捷键  main+tab

           文件当脚本去执行,下面的代码执行

            文件当模块导入时,下面的代码不执行

   包

       定义

            含有__init__.py 文件的文件夹就是包

                  多个模块的集合

             本质就是模块

    绝对导入

        执行文件所在的目录

        导入要精确到模块--不出问题

        import   要调用方法,后面写的都要写上

         from   aaa.ccc    import   c    c.c()

                 from    左边的一定是个包,否则出错

                  import     后面的内容一定不能带

    相对导入

          执行文件中不能用相对导入

                当前位置        ..上一级目录      ...上上目录

               当你写好的包给比尔用时,自己不用可以用相对导入

原文地址:https://www.cnblogs.com/lisen321/p/11950315.html