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 相关文章推荐
python中的yield使用方法
Feb 11 Python
一个基于flask的web应用诞生 使用模板引擎和表单插件(2)
Apr 11 Python
Python输出由1,2,3,4组成的互不相同且无重复的三位数
Feb 01 Python
python spyder中读取txt为图片的方法
Apr 27 Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 Python
python之当你发现QTimer不能用时的解决方法
Jun 21 Python
python re.sub()替换正则的匹配内容方法
Jul 22 Python
pytorch 自定义参数不更新方式
Jan 06 Python
python画图常规设置方式
Mar 05 Python
Python TestSuite生成测试报告过程解析
Jul 23 Python
Python内存泄漏和内存溢出的解决方案
Sep 26 Python
Python 机器学习工具包SKlearn的安装与使用
May 14 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
通过html表格发电子邮件
2006/10/09 PHP
php 清除网页病毒的方法
2008/12/05 PHP
phpmyadmin config.inc.php配置示例
2013/08/27 PHP
Symfony生成二维码的方法
2016/02/04 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
javascript实现促销倒计时+fixed固定在底部
2013/09/18 Javascript
JQuery中的html()、text()、val()区别示例介绍
2014/09/01 Javascript
JavaScript动态添加列的方法
2015/03/25 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
js原生跨域_用script标签的简单实现
2016/09/24 Javascript
移动端点击态处理的三种实现方式
2017/01/12 Javascript
vue-router路由简单案例介绍
2017/02/21 Javascript
AngularJS实现表单元素值绑定操作示例
2017/10/11 Javascript
vue和react等项目中更简单的实现展开收起更多等效果示例
2018/02/22 Javascript
vue模块拖拽实现示例代码
2019/03/09 Javascript
jQuery实现html可联动的百分比进度条
2020/03/26 jQuery
vuex实现购物车功能
2020/06/28 Javascript
vue 实现超长文本截取,悬浮框提示
2020/07/29 Javascript
Python实现全局变量的两个解决方法
2014/07/03 Python
Python中函数的参数定义和可变参数用法实例分析
2015/06/04 Python
Python中多线程的创建及基本调用方法
2016/07/08 Python
Python实现的读取文件内容并写入其他文件操作示例
2019/04/09 Python
Python检查 云备份进程是否正常运行代码实例
2019/08/22 Python
python关于调用函数外的变量实例
2019/12/26 Python
flask 框架操作MySQL数据库简单示例
2020/02/02 Python
python实现随机加减法生成器
2020/02/24 Python
Python-jenkins 获取job构建信息方式
2020/05/12 Python
请解释在new与override的区别
2012/10/29 面试题
软件测试笔试题
2012/10/25 面试题
建筑学推荐信
2013/11/03 职场文书
入党申请人的自我鉴定
2013/12/01 职场文书
实习评语
2013/12/16 职场文书
自我评价如何写好?
2014/01/05 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
新生开学寄语大全
2015/05/28 职场文书
公司酒会主持词
2015/07/02 职场文书