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基础教程之python消息摘要算法使用示例
Feb 10 Python
Python中使用PIPE操作Linux管道
Feb 04 Python
使用70行Python代码实现一个递归下降解析器的教程
Apr 17 Python
Python中的getopt函数使用详解
Jul 28 Python
使用python3构建文件传输的方法
Feb 13 Python
Django中Middleware中的函数详解
Jul 18 Python
Python generator生成器和yield表达式详解
Aug 08 Python
python plotly画柱状图代码实例
Dec 13 Python
基于Python中random.sample()的替代方案
May 23 Python
python如何保存文本文件
Jun 07 Python
详解解决jupyter不能使用pytorch的问题
Feb 18 Python
浅谈Python数学建模之线性规划
Jun 23 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
双料怀旧--SHARP GF515的维护、修理和简单调试
2021/03/02 无线电
PHP用mysql数据库存储session的代码
2010/03/05 PHP
PHP静态文件生成类实例
2014/11/29 PHP
详解PHP序列化反序列化的方法
2015/10/27 PHP
PHP实现简易计算器功能
2020/08/28 PHP
按给定几率进行随机抽取的js代码
2010/12/28 Javascript
HTML复选框和单选框 checkbox和radio事件介绍
2012/12/12 Javascript
js动态为代码着色显示行号
2013/05/29 Javascript
Node.js中的模块机制学习笔记
2014/11/04 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
2015/11/02 Javascript
jquery实现九宫格大转盘抽奖
2015/11/13 Javascript
jQuery实现标题有打字效果的焦点图代码
2015/11/16 Javascript
jquery实现点击弹出可放大居中及关闭的对话框(附demo源码下载)
2016/05/10 Javascript
JavaScript中的splice方法用法详解
2016/07/20 Javascript
详解Javascript函数声明与递归调用
2016/10/22 Javascript
Javascript中的prototype与继承
2017/02/06 Javascript
Bootstrap入门教程一Hello Bootstrap初识
2017/03/02 Javascript
Vue.js仿微信聊天窗口展示组件功能
2017/08/11 Javascript
Vue源码分析之Vue实例初始化详解
2019/08/25 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
Python实现模拟分割大文件及多线程处理的方法
2017/10/10 Python
Python实现按中文排序的方法示例
2018/04/25 Python
基于tensorflow加载部分层的方法
2018/07/26 Python
Python3 读、写Excel文件的操作方法
2018/10/20 Python
python 应用之Pycharm 新建模板默认添加编码格式-作者-时间等信息【推荐】
2019/06/17 Python
softmax及python实现过程解析
2019/09/30 Python
Python qrcode 生成一个二维码的实例详解
2020/02/12 Python
什么是Python变量作用域
2020/06/03 Python
Omio葡萄牙:全欧洲低价大巴、火车和航班搜索和比价
2019/02/09 全球购物
法国在线购买汽车轮胎网站:123pneus.fr
2019/02/25 全球购物
惠而浦美国官网:Whirlpool.com
2021/01/19 全球购物
美发店5.1活动方案
2014/01/24 职场文书
2014年信访维稳工作总结
2014/12/08 职场文书
这样写python注释让代码更加的优雅
2021/06/02 Python
html form表单基础入门案例讲解
2021/07/15 HTML / CSS
java实现面板之间切换功能
2022/06/10 Java/Android