欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python中的包和模块实例

程序员文章站 2023-11-02 23:35:28
一、实例和结果 1)实例的结构和具体的文件: 复制代码 代码如下: pypackage │  pycommonm.py │  __init__...

一、实例和结果

1)实例的结构和具体的文件:

复制代码 代码如下:

pypackage
│  pycommonm.py
│  __init__.py

├─p1package
│      p1m.py
│      p1mc.py
│      __init__.py

└─p2
       p2.py
       p2m.py

2)pycommonm.py

复制代码 代码如下:

def pycommonmf():  print "pycommonmf"

3) p1m.py:

复制代码 代码如下:

def p1mf():   print 'p1mf'

4)p1mc.py:

复制代码 代码如下:

class p1mc():
  @staticmethod
  def p1mcf():  print 'p1mcf'

5)p2m.py:

复制代码 代码如下:

def p2mf(): print 'p2mf'

6) p2.py:

复制代码 代码如下:

import p2m
from pypackage import pycommonm
from pypackage.p1package import p1m
from pypackage.p1package.p1mc import p1mc

def p2f():
  print 'p2f'
 
if __name__ == '__main__':
  p2f()
  p2m.p2mf()
  p1m.p1mf()
  p1mc.p1mcf()
  pycommonm.pycommonmf()

7) 运行p2.py的结果:

复制代码 代码如下:

p2f
p2mf
p1mf
p1mcf
pycommonmf

二、解释

*  一个py文件为一个module,例如module: pycommonm.py,p2m.py,p1mc.py, p1m.py 。
*  包含__init__.py的文件夹为一个package,例如package: pypackage,p1package。
*  可以直接使用import来引用相同目录下的其他的module, 例如p2.py中的import p2m。
*  通过from import来引用其他的目录下且属于某个package的module,例如py.py中的from pypackage import pycommonm 和 from pypackage.p1package import p1m。
*  通过from import来引用某个module中的类,例如from pypackage.p1package.p1mc import p1mc

注意package所在的目录必须在pythonpath环境变量中。