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操作MySQL简单实现方法
Jan 26 Python
线程和进程的区别及Python代码实例
Feb 04 Python
总结Python编程中三条常用的技巧
May 11 Python
Python进程间通信用法实例
Jun 04 Python
python 常见字符串与函数的用法详解
Nov 23 Python
Python2和Python3中urllib库中urlencode的使用注意事项
Nov 26 Python
python3.6根据m3u8下载mp4视频
Jun 17 Python
anaconda如何查看并管理python环境
Jul 05 Python
详解字符串在Python内部是如何省内存的
Feb 03 Python
用 python 进行微信好友信息分析
Nov 28 Python
python 使用csv模块读写csv格式文件的示例
Dec 02 Python
python 第三方库paramiko的常用方式
Feb 20 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执行速度全攻略(下)
2006/10/09 PHP
强烈声明: 不要使用(include/require)_once
2013/06/06 PHP
php读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
php使用curl简单抓取远程url的方法
2015/03/13 PHP
ThinkPHP整合datatables实现服务端分页的示例代码
2018/02/10 PHP
php 自定义函数实现将数据 以excel 表格形式导出示例
2019/11/13 PHP
浅谈PHP之ThinkPHP框架使用详解
2020/07/21 PHP
javascript学习随笔(使用window和frame)的技巧
2007/03/08 Javascript
jQuery EasyUI API 中文文档 - Draggable 可拖拽
2011/09/29 Javascript
通过jquery还原含有rowspan、colspan的table的实现方法
2012/02/10 Javascript
AngularJS入门教程(二):AngularJS模板
2014/12/06 Javascript
Javascript URI 解析介绍
2015/03/15 Javascript
JavaScript中的call和apply的用途以及区别
2017/01/11 Javascript
angular.JS实现网页禁用调试、复制和剪切
2017/03/31 Javascript
Angular通过指令动态添加组件问题
2018/07/09 Javascript
微信小程序在地图选择地址并返回经纬度简单示例
2018/12/03 Javascript
vue如何自动化打包测试环境和正式环境的dist/test文件
2019/06/06 Javascript
javascript触发模拟鼠标点击事件
2019/06/26 Javascript
js点击事件的执行过程实例分析【冒泡与捕获】
2020/04/11 Javascript
JavaScript中的各种宽高属性的实现
2020/05/08 Javascript
Postman动态获取返回值过程详解
2020/06/30 Javascript
python爬虫之百度API调用方法
2017/06/11 Python
Python中断多重循环的几种方式详解
2020/02/10 Python
用Python在Excel里画出蒙娜丽莎的方法示例
2020/04/28 Python
Python之变量类型和if判断方式
2020/05/05 Python
python从Oracle读取数据生成图表
2020/10/14 Python
python基于socket模拟实现ssh远程执行命令
2020/12/05 Python
20世纪40年代连衣裙和复古服装:The Seamstress Of Bloomsbury
2018/07/24 全球购物
行政部主管岗位职责
2013/12/28 职场文书
迟到检讨书5000字
2014/01/31 职场文书
工作求职自荐信
2014/06/13 职场文书
催款函范文
2015/06/24 职场文书
使用react-virtualized实现图片动态高度长列表的问题
2021/05/28 Javascript
一起来学习Python的元组和列表
2022/03/13 Python
vue elementUI批量上传文件
2022/04/26 Vue.js
Java存储没有重复元素的数组
2022/04/29 Java/Android