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使用wxPython打开并播放wav文件的方法
Apr 24 Python
python将文本转换成图片输出的方法
Apr 28 Python
centos6.4下python3.6.1安装教程
Jul 21 Python
python执行使用shell命令方法分享
Nov 08 Python
详解python中asyncio模块
Mar 03 Python
python基础知识(一)变量与简单数据类型详解
Apr 17 Python
Django rstful登陆认证并检查session是否过期代码实例
Aug 13 Python
Python进阶之使用selenium爬取淘宝商品信息功能示例
Sep 16 Python
python反转列表的三种方式解析
Nov 08 Python
python FTP批量下载/删除/上传实例
Dec 22 Python
python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码
Jun 11 Python
Python urllib库如何添加headers过程解析
Oct 05 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 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
利用curl抓取远程页面内容的示例代码
2013/07/23 PHP
php将HTML表格每行每列转为数组实现采集表格数据的方法
2015/04/03 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
分析PHP中单双引号的误区和双引号小隐患
2016/07/19 PHP
PHP 对象继承原理与简单用法示例
2020/04/21 PHP
JQuery 确定css方框模型(盒模型Box Model)
2010/01/22 Javascript
js 代码优化点滴记录
2012/02/19 Javascript
JS+ACTIVEX实现网页选择本地目录路径对话框
2013/03/18 Javascript
使用javascript实现ListBox左右全选,单选,多选,全请
2013/11/07 Javascript
jQuery及JS实现循环中暂停的方法
2015/02/02 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
基于javascript显示当前时间以及倒计时功能
2016/03/18 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
基于angularjs实现图片放大镜效果
2016/08/31 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
微信小程序 两种为对象属性赋值的方式详解
2017/02/23 Javascript
利用node.js实现反向代理的方法详解
2017/07/24 Javascript
Vue和React组件之间的传值方式详解
2019/01/31 Javascript
Vue项目实现简单的权限控制管理功能
2019/07/17 Javascript
vue实现输入框的模糊查询的示例代码(节流函数的应用场景)
2019/09/01 Javascript
Vuex实现数据增加和删除功能
2019/11/11 Javascript
简单介绍利用TK在Python下进行GUI编程的教程
2015/04/13 Python
Python使用pyautogui模块实现自动化鼠标和键盘操作示例
2018/09/04 Python
Django-Model数据库操作(增删改查、连表结构)详解
2019/07/17 Python
python3 图片 4通道转成3通道 1通道转成3通道 图片压缩实例
2019/12/03 Python
使用HTML和CSS实现的标签云效果(附demo)
2021/02/03 HTML / CSS
小天鹅官方商城:LittleSwan
2017/06/16 全球购物
Kathmandu美国网站:新西兰户外运动品牌
2019/03/23 全球购物
CHARLES & KEITH台湾官网:新加坡时尚品牌
2019/07/30 全球购物
Tomcat中怎么使用log4j输出所有的log
2016/07/07 面试题
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
建国大业观后感600字
2015/06/01 职场文书
运动会100米加油稿
2015/07/21 职场文书
windows server2008 开启端口的实现方法
2022/06/25 Servers