Python中的包和模块实例


Posted in Python onNovember 22, 2014

一、实例和结果

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使用内存zipfile对象在内存中打包文件示例
Apr 30 Python
python创建线程示例
May 06 Python
python里对list中的整数求平均并排序
Sep 12 Python
Python中给List添加元素的4种方法分享
Nov 28 Python
Python使用smtplib模块发送电子邮件的流程详解
Jun 27 Python
python基于twisted框架编写简单聊天室
Jan 02 Python
python numpy数组的索引和切片的操作方法
Oct 20 Python
pyqt5 实现多窗口跳转的方法
Jun 19 Python
python实现在cmd窗口显示彩色文字
Jun 24 Python
django删除表重建的实现方法
Aug 28 Python
Django如何实现密码错误报错提醒
Sep 04 Python
Django 如何实现文件上传下载
Apr 08 Python
Python动态加载模块的3种方法
Nov 22 #Python
收集的几个Python小技巧分享
Nov 22 #Python
Python获取Windows或Linux主机名称通用函数分享
Nov 22 #Python
Python中使用glob和rmtree删除目录子目录及所有文件的例子
Nov 21 #Python
Python中使用SAX解析xml实例
Nov 21 #Python
python sort、sorted高级排序技巧
Nov 21 #Python
python中global与nonlocal比较
Nov 21 #Python
You might like
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
2014/11/18 PHP
PHP魔术方法__GET、__SET使用实例
2014/11/25 PHP
关于laravel5.5的定时任务详解(demo)
2019/10/23 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
2019/12/25 PHP
Javascript中 关于prototype属性实现继承的原理图
2013/04/16 Javascript
jQuery中RadioButtonList的功能及用法实例介绍
2013/08/23 Javascript
基于jQuery创建鼠标悬停效果的方法
2015/03/07 Javascript
jQuery子窗体取得父窗体元素的方法
2015/05/11 Javascript
javascript中的作用域和闭包详解
2016/01/13 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
2016/02/20 Javascript
JS代码实现根据时间变换页面背景效果
2016/06/16 Javascript
详解Vue2 无限级分类(添加,删除,修改)
2017/03/07 Javascript
vue封装第三方插件并发布到npm的方法
2017/09/25 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
2018/08/05 Javascript
vue-cli 2.*中导入公共less文件的方法步骤
2018/11/22 Javascript
layui点击数据表格添加或删除一行的例子
2019/09/12 Javascript
vue实现在线学生录入系统
2020/05/30 Javascript
vuex分模块后,实现获取state的值
2020/07/26 Javascript
[05:39]2014DOTA2国际邀请赛 DK晋级胜者组专访战队国士无双
2014/07/14 DOTA
python使用datetime模块计算各种时间间隔的方法
2015/03/24 Python
python调用java模块SmartXLS和jpype修改excel文件的方法
2015/04/28 Python
Python使用django搭建web开发环境
2017/06/09 Python
python模拟事件触发机制详解
2018/01/19 Python
Pyqt清空某一个QTreeewidgetItem下的所有分支方法
2019/06/17 Python
Django 使用easy_thumbnails压缩上传的图片方法
2019/07/26 Python
Python openpyxl模块实现excel读写操作
2020/06/30 Python
python 浮点数四舍五入需要注意的地方
2020/08/18 Python
UI自动化定位常用实现方法代码示例
2020/10/27 Python
全球酒店预订网站:Hotels.com
2016/08/10 全球购物
巴西服装和鞋子购物网站:Marisa
2018/10/25 全球购物
国际花店:Pickup Flowers
2020/04/10 全球购物
护理实习自我鉴定
2013/12/14 职场文书
财务务虚会发言材料
2014/10/20 职场文书
2014年化妆品销售工作总结
2014/12/01 职场文书
2019大学生实习报告
2019/06/21 职场文书
单机多实例部署 MySQL8.0.20
2022/05/15 MySQL