zoukankan      html  css  js  c++  java
  • python中模块和包

    一,问题

    我们想把代码按照一定的层次结构组织成包

    二,解决方案:

    创建一个软件包结构是很简单的。只要把代码按照所希望的方式在文件系统上进行组织,并确保每个目录中都定义了一个_init_py文件即可。例如:

    graphics/
         _init_.py
        primitive/
            _init_.py
            line.py
            fill.py
            text.py
         formats/
            _init_.py
            png.py
            jpg.py
    

      一旦完成,就可以执行各种各样的import语句了,比如:

      import graphics.primitive.line
    
      from graphics.primitive import line
    
      import graphics.formats.jpg as jpg
    

    三,讨论:


    定义一个具有层次结构的模块就如同在文件系统上创建目录一样简单。_init_.py文件的目的就是包含可选的初始化代码,当遇到软件包中不同层次的模块时会触发运行。比如,如果写下import graphics语句时,文件graphics/_init_.py会被导入并graphics命名空间中的内容。对于import graphics.formats.jpg这样的导入语句,文件graphics/_init_.py和graphics/formats/_init_py都会在最终导入文件graphics/formats/jpg.py之前优先得到导入。

    全世界的程序员们联合起来吧!
  • 相关阅读:
    Unity3D笔记 英保通三 脚本编写 、物体间通信
    Unity3D笔记 英保通二
    Unity3D 面试ABC
    Unity3D 记第一次面试
    Unity3D笔记 英保通一
    (转)关于如何学好游戏3D引擎编程的一些经验
    Java_异常
    Java_多态
    Java_继承(下)
    Java_继承(上)
  • 原文地址:https://www.cnblogs.com/chaojiyingxiong/p/14784269.html
Copyright © 2011-2022 走看看