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 测试实现方法
Dec 24 Python
Django集成百度富文本编辑器uEditor攻略
Jul 04 Python
tensorflow创建变量以及根据名称查找变量
Mar 10 Python
Python3.5 Pandas模块之Series用法实例分析
Apr 23 Python
Python基本数据结构之字典类型dict用法分析
Jun 08 Python
python实现五子棋人机对战游戏
Mar 25 Python
打包python 加icon 去掉cmd黑窗口方法
Jun 24 Python
Python使用__new__()方法为对象分配内存及返回对象的引用示例
Sep 20 Python
python 矢量数据转栅格数据代码实例
Sep 30 Python
Python遍历字典方式就实例详解
Dec 28 Python
序列化Python对象的方法
Aug 01 Python
python实现文件分片上传的接口自动化
Nov 19 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 魔术函数使用说明
2010/02/21 PHP
PHP之COOKIE支持详解
2010/09/20 PHP
PHP图片处理之图片背景、画布操作
2014/11/19 PHP
PHP 应用容器化以及部署方法
2018/02/12 PHP
PHP两个n位的二进制整数相加问题的解决
2018/08/26 PHP
PHP-FPM的配置与优化讲解
2019/03/15 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
PHP优化之批量操作MySQL实例分析
2020/04/23 PHP
javascript 获取url参数和script标签中获取url参数函数代码
2010/01/22 Javascript
jQuery学习笔记 操作jQuery对象 CSS处理
2012/09/19 Javascript
JavaScript动态加载样式表的方法
2015/03/21 Javascript
js数组的五种迭代方法及两种归并方法(推荐)
2016/06/14 Javascript
vue.js学习笔记:如何加载本地json文件
2017/01/17 Javascript
Node.js使用Express创建Web项目详细教程
2017/03/31 Javascript
Jquery中attr与prop的区别详解
2017/05/27 jQuery
Vue.js学习笔记之常用模板语法详解
2017/07/25 Javascript
JavaScript中使用Async实现异步控制
2017/08/15 Javascript
使用JavaScript实现点击循环切换图片效果
2017/09/03 Javascript
优雅的elementUI table单元格可编辑实现方法详解
2018/12/23 Javascript
微信小程序 自定义复选框实现代码实例
2019/09/04 Javascript
CountUp.js数字滚动插件使用方法详解
2019/10/17 Javascript
python分析网页上所有超链接的方法
2015/05/08 Python
django轻松使用富文本编辑器CKEditor的方法
2017/03/30 Python
NumPy中的维度Axis详解
2019/11/26 Python
Python实现井字棋小游戏
2020/03/09 Python
Python使用多进程运行含有任意个参数的函数
2020/05/02 Python
celery在python爬虫中定时操作实例讲解
2020/11/27 Python
详解修改Anaconda中的Jupyter Notebook默认工作路径的三种方式
2021/01/24 Python
python利用后缀表达式实现计算器功能
2021/02/22 Python
2014年圣诞节倒计时网页的制作过程
2014/12/05 HTML / CSS
新闻专业应届生求职信
2013/10/31 职场文书
厨房管理计划书
2014/04/27 职场文书
2014年小学美术工作总结
2014/12/20 职场文书
一年级数学上册复习计划
2015/01/17 职场文书
初中体育课教学反思
2016/02/16 职场文书
java中重写父类方法加不加@Override详解
2021/06/21 Java/Android