zoukankan      html  css  js  c++  java
  • python全栈开发_day16_包

    一:包

      1)包就是管理一系列模块的文件夹

      2)包中有一个__init__.py文件来专门管理每一个模块(在__init__文件中不建议import导入模块,不建议as起别名)

    二:导入完成的工作

      1)编译执行模块文件形成对应的pyc文件

      2)形成模块的全局名称空间

      3)通过import关键字产生名字指向对应的地址

      ps:导入的顺序为:内存》》内置模块》》自定义模块

    三:绝对导入

      本质:import后直接导入,或者from 包名.模块 import 功能

      必须有绝对的路径进行导入

    import new.nw
    
    new.nw.a()
    
    #此处导入了new文件夹中得到nw模块,nw中有一个功能a()

      循环导入

    a模块中引用b模块
    b模块中引用a模块
    
    通常先创建变量,再去引用,否则可能会出现引用的函数中需要用的变量没有产生。

    四:相对导入

      本质:利用.语法,获取当前文件所在文件夹路径(..为回到上层文件夹,以此类推,不能退出底层文件夹)

    from ...pkmm.gn import a
    
    #当前文件所在的文件夹的上上层文件夹中有一个文件夹pkmm中有一个gn模块,导入其中的a功能
    #相对导入的py文件无法自执行

      导包时应确定包在环境变量中,导入的文件夹名就是包名

  • 相关阅读:
    哈希表
    java读写xml文件
    Java学习之Hessian通信基础
    DevExpress 中 gridView编辑单元格,失去焦点后,内容继而消失
    DevExpress控件的GridControl控件小结
    Spring 架构图
    WebLogic和Tomcat的区别
    EJB到底是什么,真的那么神秘吗??
    C# 枚举类型
    关于C#的Main(String[] args)参数输入问题
  • 原文地址:https://www.cnblogs.com/xuxingping/p/10678059.html
Copyright © 2011-2022 走看看