Python包,__init__.py功能与用法分析


Posted in Python onJanuary 07, 2020

本文实例讲述了Python包,__init__.py功能与用法。分享给大家供大家参考,具体如下:

包:

  • 为了组织好模块,将多个模块组合为一个包,所以包用于存放python模块
  • 包通常是一个文件夹,当文件夹当作包使用时,文件夹需要包含__init__.py文件
  • __init__.py的内容可以为空,一般用来进行包的某些初始化工作或者设置__all__值,__all__是在from ... import * 语句使用的,__all__中定义的模块将在from ... import * 中全部导入

目录结构:Python包,__init__.py功能与用法分析

test1代码:Python包,__init__.py功能与用法分析

package_test.__init__.py代码:Python包,__init__.py功能与用法分析

inner代码:Python包,__init__.py功能与用法分析

导入包的test1模块,以及子包的inner模块:

from package_test import test1

from package_test.child_package import inner



#-----------------运行结果:
run in package_test.__init__.py
import test1 done
run in inner

__init__.py的常见用途:

  • 批量导入我们所需要的模块

__init__代码:

Python包,__init__.py功能与用法分析

b导入package_test的代码:

import package_test

print(package_test.re,package_test.bs4)


#--------------
#运行结果:
<module 're' from 'I:\\python3\\lib\\re.py'> <module 'bs4' from 'I:\\python3\\lib\\site-packages\\bs4\\__init__.py'>
  • __all__,用来将模块全部导入,与上面不同的是,__all__只能导入包中有的模块:

目录结构:

Python包,__init__.py功能与用法分析

__init__代码:

__all__=['test1']

b导入package_test的代码:

from package_test import *

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

Python 相关文章推荐
Linux下编译安装MySQL-Python教程
Feb 02 Python
浅谈Python 集合(set)类型的操作——并交差
Jun 30 Python
Python中如何获取类属性的列表
Dec 26 Python
python模仿网页版微信发送消息功能
Feb 24 Python
小白入门篇使用Python搭建点击率预估模型
Oct 12 Python
python时间序列按频率生成日期的方法
May 14 Python
Python中单线程、多线程和多进程的效率对比实验实例
May 14 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
May 23 Python
django框架模板语言使用方法详解
Jul 18 Python
Python csv文件的读写操作实例详解
Nov 19 Python
python绘制彩虹图
Dec 16 Python
tensorflow 获取checkpoint中的变量列表实例
Feb 11 Python
Python3实现发送邮件和发送短信验证码功能
Jan 07 #Python
Python模块的定义,模块的导入,__name__用法实例分析
Jan 07 #Python
python 微信好友特征数据分析及可视化
Jan 07 #Python
Python打开文件、文件读写操作、with方式、文件常用函数实例分析
Jan 07 #Python
Python装饰器原理与基本用法分析
Jan 07 #Python
python保留小数位的三种实现方法
Jan 07 #Python
pytorch之ImageFolder使用详解
Jan 06 #Python
You might like
ThinkPHP连接数据库及主从数据库的设置教程
2014/08/22 PHP
php+jQuery.uploadify实现文件上传教程
2014/12/26 PHP
PHP中创建和验证哈希的简单方法实探
2015/07/06 PHP
表单提交错误后返回内容消失问题的解决方法(PHP网站)
2015/10/20 PHP
chrome下img加载对height()的影响示例探讨
2014/05/26 Javascript
javascript设置连续两次点击按钮时间间隔的方法
2014/10/28 Javascript
JQuery EasyUI学习教程之datagrid 添加、修改、删除操作
2016/07/09 Javascript
jQuery EasyUI 右键菜单--关闭标签/选项卡的简单实例
2016/10/10 Javascript
微信小程序的分类页面制作
2017/06/27 Javascript
详解webpack的配置文件entry与output
2017/08/21 Javascript
浅析JS抽象工厂模式
2017/12/14 Javascript
React Native之prop-types进行属性确认详解
2017/12/19 Javascript
react 兄弟组件如何调用对方的方法示例
2018/10/23 Javascript
详解jQuery如何实现模糊搜索
2019/05/10 jQuery
javascript面向对象三大特征之多态实例详解
2019/07/24 Javascript
node.JS二进制操作模块buffer对象使用方法详解
2020/02/06 Javascript
详解JavaScript执行模型
2020/11/16 Javascript
Python中pip安装非PyPI官网第三方库的方法
2015/06/02 Python
Python实现简单求解给定整数的质因数算法示例
2018/03/25 Python
python爬取网易云音乐评论
2018/11/16 Python
python pygame模块编写飞机大战
2018/11/20 Python
Python 按字典dict的键排序,并取出相应的键值放于list中的实例
2019/02/12 Python
使用PyTorch训练一个图像分类器实例
2020/01/08 Python
Python获取二维数组的行列数的2种方法
2020/02/11 Python
对python中list的五种查找方法说明
2020/07/13 Python
Clearly澳大利亚:购买眼镜、太阳镜和隐形眼镜
2018/04/26 全球购物
三个Unix的命令面试题
2015/04/12 面试题
素质拓展感言
2014/01/29 职场文书
煤矿班组长竞聘书
2014/03/31 职场文书
办公室岗位职责
2015/02/04 职场文书
学校运动会开幕词
2016/03/03 职场文书
带你彻底理解JavaScript中的原型对象
2021/04/14 Javascript
利用 JavaScript 构建命令行应用
2021/11/17 Javascript
分析Python list操作为什么会错误
2021/11/17 Python
MySQL磁盘碎片整理实例演示
2022/04/03 MySQL
如何vue使用el-table遍历循环表头和表体数据
2022/04/26 Vue.js