Python中的包和模块实例

yipeiwu_com6年前Python基础

一、实例和结果

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环境变量中。

相关文章

python实现输入任意一个大写字母生成金字塔的示例

python实现输入任意一个大写字母生成金字塔的示例

输入任意一个大写字母,生成金字塔图形 def GoldTa(input): L = [chr(i) for i in range(65, 91)] # 大写字母A--Z id...

Python发送邮件功能示例【使用QQ邮箱】

Python发送邮件功能示例【使用QQ邮箱】

本文实例讲述了Python发送邮件功能。分享给大家供大家参考,具体如下: 这里以QQ邮箱为例说明 登录邮箱点账号 开启smtp 开启时会要求你发送一条短信,发送完成后点已发送。 就有...

Python写的一个简单监控系统

Python写的一个简单监控系统

市面上有很多开源的监控系统:Cacti、nagios、zabbix。感觉都不符合我的需求,为什么不自己做一个呢 用Python两个小时徒手撸了一个简易的监控系统,给大家分享一下,希望能对...

Python的ORM框架中SQLAlchemy库的查询操作的教程

1. 返回列表和标量(Scalar) 前面我们注意到Query对象可以返回可迭代的值(iterator value),然后我们可以通过for in来查询。不过Query对象的all()、...

Python使用scrapy采集时伪装成HTTP/1.1的方法

本文实例讲述了Python使用scrapy采集时伪装成HTTP/1.1的方法。分享给大家供大家参考。具体如下: 添加下面的代码到 settings.py 文件 复制代码 代码如下:DOW...