Python模块、包(Package)概念与用法分析


Posted in Python onMay 31, 2019

本文实例讲述了Python模块、包(Package)概念与用法。分享给大家供大家参考,具体如下:

Python中”模块”的概念

在开发中,我们会有很多函数,我们可以把这些函数都放到一个文件。

比如function.py中:

#定义函数
def show():
  print("jack")
#定义变量
name = "tom"

在其他地方要使用其中的函数怎么办呢?

第一步:需要先引入

import funtions

第二步:通过文件名.函数名/变量名的方式使用

funtions.show() # jack
print(funtions.name) # tom

另外一种导入方式

#另外一种导入方式
from funtions import *
show() # jack
print(name) #tom

要比较2种引入方式背后有什么不同,可以使用下面的方法

#打印局部变量符号表
print(locals())
#打印全局变量符号表
print(globals())

Python中包(Package)的概念

Package可以用来管理模块(同名的模块放入不同的包就不冲突了),要理解这个概念可以结合命名空间作用来理解。

创建Package:

在IDE中,右键->new->Python Package

创建之后会同时创建一个名叫__init__.py的文件,文件内容是空的。

这个__init__.py文件的作用可以认为是用来识别这个是一个包,而不是普通目录。

Python模块、包(Package)概念与用法分析

把我们的模块(公共函数funcitons.py)文件 放入这个包中,那么在引入这个模块的文件时候就不一样了:

#引入地址 包名.文件名
import common.funtions

这种引入方式我们要使用里面的函数:

common.funtions.show()

诶,这种方式怎么这么繁琐?

别急,我们还有一种引入方式呢。

from common.funtions import *
show() # 直接使用函数

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python实现bitmap数据结构详解
Feb 17 Python
Python的Tornado框架实现图片上传及图片大小修改功能
Jun 30 Python
Python轻量级ORM框架Peewee访问sqlite数据库的方法详解
Jul 20 Python
Python基于PyGraphics包实现图片截取功能的方法
Dec 21 Python
python无限生成不重复(字母,数字,字符)组合的方法
Dec 04 Python
OpenCV-Python 摄像头实时检测人脸代码实例
Apr 30 Python
django中使用Celery 布式任务队列过程详解
Jul 29 Python
用Cython加速Python到“起飞”(推荐)
Aug 01 Python
Python迭代器模块itertools使用原理解析
Dec 11 Python
pyinstaller打包单文件时--uac-admin选项不起作用怎么办
Apr 15 Python
8种常用的Python工具
Aug 05 Python
如何使用Tkinter进行窗口的管理与设置
Jun 30 Python
python多线程下信号处理程序示例
May 31 #Python
浅谈Python大神都是这样处理XML文件的
May 31 #Python
Python2.7实现多进程下开发多线程示例
May 31 #Python
Python3内置模块之json编解码方法小结【推荐】
Dec 09 #Python
一文了解Python并发编程的工程实现方法
May 31 #Python
Python微信操控itchat的方法
May 31 #Python
python基于SMTP协议发送邮件
May 31 #Python
You might like
解析php根据ip查询所在地区(非常有用,赶集网就用到)
2013/07/01 PHP
php中memcache 基本操作实例
2015/05/17 PHP
PHP5中使用mysqli的prepare操作数据库的介绍
2019/03/18 PHP
List the Stored Procedures in a SQL Server database
2007/06/20 Javascript
jquery阻止后续事件只执行第一个事件
2014/07/24 Javascript
ztree获取当前选中节点子节点id集合的方法
2015/02/12 Javascript
js+html5实现的自由落体运动效果代码
2016/01/28 Javascript
Node.js复制文件的方法示例
2016/12/29 Javascript
Javascript实现一个简单的输入关键字添加标签效果实例
2017/06/01 Javascript
在vue中通过axios异步使用echarts的方法
2018/01/13 Javascript
jQuery实现每隔一段时间自动更换样式的方法分析
2018/05/03 jQuery
在HTML文档中嵌入JavaScript的四种方法
2018/05/07 Javascript
javascript头像上传代码实例
2019/09/28 Javascript
vue 动态组件用法示例小结
2020/03/06 Javascript
vue项目打包之开发环境和部署环境的实现
2020/04/23 Javascript
jquery实现异步文件上传ajaxfileupload.js
2020/10/23 jQuery
web.py在模板中输出美元符号的方法
2014/08/26 Python
跟老齐学Python之Import 模块
2014/10/13 Python
用Python的Django框架来制作一个RSS阅读器
2015/07/22 Python
十条建议帮你提高Python编程效率
2016/02/16 Python
Python图像处理之图片文字识别功能(OCR)
2019/07/30 Python
pytorch 加载(.pth)格式的模型实例
2019/08/20 Python
Python底层封装实现方法详解
2020/01/22 Python
520使用Python实现“我爱你”表白
2020/05/20 Python
实例教程 利用html5和css3打造一款创意404页面
2014/10/20 HTML / CSS
详解Canvas实用库Fabric.js使用手册
2019/01/07 HTML / CSS
英国定做窗帘和纺织品面料一站式商店:Dekoria
2018/08/29 全球购物
奥地利度假券的专家:we-are.travel
2019/04/10 全球购物
高中三年学习生活的自我评价
2013/10/10 职场文书
自考生毕业自我鉴定
2013/10/10 职场文书
函授大专自我鉴定
2013/11/01 职场文书
入团者的自我评价分享
2013/12/02 职场文书
工业学校毕业生自荐书
2014/01/03 职场文书
消防安全管理制度
2014/02/01 职场文书
《宋庆龄故居的樟树》教学反思
2014/04/07 职场文书
Python机器学习之基础概述
2021/05/19 Python