位置: 编程技术 - 正文

Python中__init__.py文件的作用详解(python中__init__)

编辑:rootadmin

推荐整理分享Python中__init__.py文件的作用详解(python中__init__),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:__init__.py在python中的用法,python ind,python __init__ py,python ind,python里面__init__.py,python __init__ py,python __init__ py,python __init__ py,内容如对您有帮助,希望把文章链接给更多的朋友!

__init__.py 文件的作用是将文件夹变为一个Python模块,Python 中的每个模块的包中,都有__init__.py 文件。

通常__init__.py 文件为空,但是我们还可以为它增加其他的功能。我们在导入一个包时,实际上是导入了它的__init__.py文件。这样我们可以在__init__.py文件中批量导入我们所需要的模块,而不再需要一个一个的导入。

注意这里访问__init__.py文件中的引用文件,需要加上包名。

__init__.py中还有一个重要的变量,__all__, 它用来将模块全部导入。

这时就会把注册在__init__.py文件中__all__列表中的模块和包导入到当前文件中来。

可以了解到,__init__.py主要控制包的导入行为。要想清楚理解__init__.py文件的作用,还需要详细了解一下import语句引用机制:

可以被import语句导入的对象是以下类型:

&#;模块文件(.py文件)

&#;C或C++扩展(已编译为共享库或DLL文件)

&#;包(包含多个模块)

&#;内建模块(使用C编写并已链接到Python解释器中)

当导入模块时,解释器按照sys.path列表中的目录顺序来查找导入文件。

其中list第一个元素空字符串代表当前目录。

Python中__init__.py文件的作用详解(python中__init__)

关于.pyc 文件 与 .pyo 文件

.py文件的汇编,只有在import语句执行时进行,当.py文件第一次被导入时,它会被汇编为字节代码,并将字节码写入同名的.pyc文件中。后来每次导入操作都会直接执行.pyc 文件(当.py文件的修改时间发生改变,这样会生成新的.pyc文件),在解释器使用-O选项时,将使用同名的.pyo文件,这个文件去掉了断言(assert)、断行号以及其他调试信息,体积更小,运行更快。(使用-OO选项,生成的.pyo文件会忽略文档信息)

导入模块

模块通常为单独的.py文件,可以用import直接引用,可以作为模块的文件类型有.py、.pyo、.pyc、.pyd、.so、.dll

在导入模块时,解释器做以下工作:

1.已导入模块的名称创建新的命名空间,通过该命名空间就可以访问导入模块的属性和方法。

2.在新创建的命名空间中执行源代码文件。

3.创建一个名为源代码文件的对象,该对象引用模块的名字空间,这样就可以通过这个对象访问模块中的函数及变量

import 语句可以在程序的任何位置使用,你可以在程序中多次导入同一个模块,但模块中的代码仅仅在该模块被首次导入时执行。后面的import语句只是简单的创建一个到模块名字空间的引用而已。

sys.modules字典中保存着所有被导入模块的模块名到模块对象的映射。

导入包

多个相关联的模块组成一个包,以便于维护和使用,同时能有限的避免命名空间的冲突。一般来说,包的结构可以是这样的:

有以下几种导入方式:

以上所述是小编给大家介绍的Python中__init__.py文件的作用详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对积木网网站的支持!

Python实现网络端口转发和重定向的方法 本文实例讲述了Python实现网络端口转发和重定向的方法。分享给大家供大家参考,具体如下:【任务】需要将某个网络端口转发到另一个主机(forwarding

Python自定义主从分布式架构实例分析 本文实例讲述了Python自定义主从分布式架构。分享给大家供大家参考,具体如下:环境:Win7x,Python2.7,APScheduler2.1.2。原理图如下:代码部分:(1)

Python操作Access数据库基本步骤分析 本文实例分析了Python操作Access数据库基本步骤。分享给大家供大家参考,具体如下:Python编程语言的出现,带给开发人员非常大的好处。我们可以利用

标签: python中__init__

本文链接地址:https://www.jiuchutong.com/biancheng/384453.html 转载请保留说明!

上一篇:Python简单遍历字典及删除元素的方法(遍历字符串python)

下一篇:Python实现网络端口转发和重定向的方法(python 网络应用)

  • 商贸企业购销混凝土税率怎么选择
  • 提供劳务代扣的发票
  • 报关单完成出口后收汇期限4月30日
  • 税前弥补亏损是净利润吗
  • 建筑业挂靠企业所得税如何收取
  • 股权分配利润应该怎么做账
  • 供电车间工人薪酬计入什么科目
  • 用友应收账款系统操作
  • 工程物资什么时候结转到开发成本里面
  • 营改增利息收入不能抵扣
  • 公司退款给客户怎么写
  • 固定资产贷款资料清单
  • 完税凭证和发票一起打印
  • 应预缴的增值税
  • 经营租赁的资产应计入哪里
  • 增值税需要自己交吗
  • 雇主责任险能否证明劳动关系
  • 销售人员发生的业务招待费
  • 增值税普票没有地址电话开户行信息可以吗
  • 失控发票进项税额转出申报表填写
  • 前期工程费如何分摊
  • 个体户可以申请公章吗
  • 土地一次开发和二次开发
  • 企业计算缴纳所得税标准
  • 把股份转给别人怎么处理
  • 分公司的财产归总公司所有吗
  • Windows11怎么免费升级专业版
  • u盘转移到另一个u盘
  • 去年的费用今年报销如何记账
  • 月底财务为什么要关账,暂时开不了发票
  • 销售折让和折扣的风险点
  • 以房产投资联营,收取固定收入,不承担联营风险的房产
  • 资产减值损失的借贷方向
  • linux中loop的含义
  • 大金中央空调面板图解
  • php_fileinfo作用
  • 企业未实际出资
  • ai implementation
  • 宝塔部署django
  • 稽查查补销售额后补开票如何申报
  • 数据库设计框架
  • php文本统计访问量
  • 计提下月工资怎么算
  • php微信公众号 全站模板
  • 结转损益的凭证需要打印吗
  • 新办商贸企业是国企吗
  • 个人独资企业计提的各种准备金支出不得扣除
  • 普通的收据可以入账吗
  • 公司厨房用具
  • 小微企业营业外收入二级科目怎么
  • 营改增是什么时候开始实行的?
  • 企业中征码怎么查询
  • 所有进项增值税怎么申报
  • 私企需要计提盈余公积吗
  • sqlserver索引语句
  • ubuntu安装教程14.04
  • mysql order by desc
  • 如何关闭windows程序
  • 重装系统注册表会重置吗
  • win7系统安装win10 怎么安装
  • win10如何恢复
  • ubuntu笔记软件
  • watch programmes
  • win7出现问题
  • win10双击打开文件设置方法
  • win10磁盘占用100%卡死
  • winxp系统介绍
  • win+p怎么用
  • nodejs的应用场景和优缺点
  • html中href,src区别
  • bootstrap3中container与container_fluid外层容器的区别讲解
  • vue-cli lib
  • javascript ?
  • javascript gui
  • javascript基础入门视频教程
  • jquery图片放大效果
  • python函数入门
  • 国家税务总局四川省电子税务局界面
  • 山东社保费缴纳多少
  • 1950土地改革后土地所有权
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设