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进程的信号通讯
Apr 09 Python
实例说明Python中比较运算符的使用
May 13 Python
Python爬虫之xlml解析库(全面了解)
Aug 08 Python
基于随机梯度下降的矩阵分解推荐算法(python)
Aug 31 Python
对pandas数据判断是否为NaN值的方法详解
Nov 06 Python
Django实现一对多表模型的跨表查询方法
Dec 18 Python
python 判断矩阵中每行非零个数的方法
Jan 26 Python
Python获取网段内ping通IP的方法
Jan 31 Python
使用pyecharts生成Echarts网页的实例
Aug 12 Python
python elasticsearch环境搭建详解
Sep 02 Python
浅谈TensorFlow之稀疏张量表示
Jun 30 Python
matplotlib基础绘图命令之errorbar的使用
Aug 13 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模拟asp中的XmlHttpRequest实现http请求的代码
2011/03/24 PHP
仿Aspnetpager的一个PHP分页类代码 附源码下载
2012/10/08 PHP
php中读写文件与读写数据库的效率比较分享
2013/10/19 PHP
thinkphp视图模型查询提示ERR: 1146:Table 'db.pr_order_view' doesn't exist的解决方法
2014/10/30 PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
2014/12/18 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
Yii框架 session 数据库存储操作方法示例
2019/11/18 PHP
JavaScript中的Screen屏幕对象
2008/01/16 Javascript
自动完成JS类(纯JS, Ajax模式)
2009/03/12 Javascript
javascript模拟select,jselect的方法实现
2012/11/08 Javascript
jQuery实现DIV层收缩展开的方法
2015/02/27 Javascript
ECMAScript 5严格模式(Strict Mode)介绍
2015/03/02 Javascript
javascript实现倒计时(精确到秒)
2015/06/26 Javascript
jquery衣服颜色选取插件效果代码分享
2015/08/28 Javascript
整理Javascript事件响应学习笔记
2015/12/02 Javascript
Bootstrap学习笔记之css样式设计(2)
2016/06/07 Javascript
js实现当鼠标移到表格上时显示这一格全部内容的代码
2016/06/12 Javascript
AngularJs 利用百度地图API 定位当前位置 获取地址信息
2017/01/18 Javascript
Bootstrap组合上、下拉框简单实现代码
2017/03/06 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
ES6关于Promise的用法详解
2018/05/07 Javascript
原生JS 实现的input输入时表格过滤操作示例
2019/08/03 Javascript
js实现固定区域内的不重叠随机圆
2019/10/24 Javascript
JavaScript实现联动菜单特效
2020/01/07 Javascript
webpack安装配置与常见使用过程详解(结合vue)
2020/06/01 Javascript
vue中父子组件传值,解决钩子函数mounted只运行一次的操作
2020/07/27 Javascript
[00:26]TI7不朽珍藏III——冥界亚龙不朽展示
2017/07/15 DOTA
Python实现的径向基(RBF)神经网络示例
2018/02/06 Python
用python写一个定时提醒程序的实现代码
2019/07/22 Python
python线程定时器Timer实现原理解析
2019/11/30 Python
python实现交并比IOU教程
2020/04/16 Python
基于nexus3配置Python仓库过程详解
2020/06/15 Python
Python中flatten( ),matrix.A用法说明
2020/07/05 Python
用css3制作纸张效果(外翻卷角)
2013/02/01 HTML / CSS
Myprotein瑞典官方网站:畅销欧洲英国运动营养品牌
2018/01/22 全球购物
跟单业务员岗位职责
2014/03/08 职场文书