位置: 编程技术 - 正文

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 网络应用)

  • 财政的税收
  • 限定性资产账务处理
  • 租房违约金怎么计算,怎么写
  • 进项税加计抵减生产性服务
  • 应收票据资产负债表
  • 虚开增值税发票的涉税风险如何防范
  • 纳税申报的具体流程个体户
  • 以前年度损益调整科目怎么用
  • 培训费没有发票怎么办
  • 无形资产摊销的年限规定
  • 软件开发公司一般做什么
  • 业务宣传及广告费超比例
  • 已抵扣进项税额的购进货物或者应税劳务
  • 金税盘可以异地使用吗
  • 年终奖扣税和工资扣税
  • 劳务外包公司代发工资能正常发吗
  • 会计对帐是银行账户吗
  • 自有房屋的装修费计入长期待摊
  • 应收账款的借方负数表示什么
  • 高温津贴的发放
  • 清算期间企业所得税申报期限
  • 行政事业单位的固定资产不计提折旧
  • 逾期交房违约金怎么算
  • 税务稽查补缴增值税税款的账务处理
  • 压缩包损坏修复软件
  • 挂社保不发工资
  • 会计科目对应的会计要素
  • php tr td
  • 高新企业政府补贴怎么入账
  • 建筑企业挂靠违法吗
  • 房地产土地使用税征收标准
  • 所得税税前扣除的费用有哪些
  • uniapp编译原理
  • 债权转让抵押权一并转让,需要办理抵押变更手续
  • 加计扣除账务处理
  • 微信收款要求绑定银行卡怎么办
  • 销售费用可以开专票吗
  • web前端初级知识点
  • php事件机制
  • 什么是附加税举个例子
  • 电子发票怎么开具?
  • 小规模纳税人开专票需要交税吗
  • 企业的日常活动都有哪些
  • 一般纳税人开普票税率是3%还是13%
  • 补充医疗保险会查hiv吗
  • mysql唯一键和唯一索引
  • 逐期增长量与累计增长量
  • 车到4s店后还需办什么手续
  • 会计科目是怎么来的
  • sql server干嘛的
  • 现金流量表现金净增加额负数
  • 出口报关金额怎么算
  • 上年计提费用多了,要怎样调
  • 固定资产一次性扣除申报表怎么填
  • 收到银行结息收入怎么做会计分录
  • 民间非营利组织会计制度及操作实务
  • ubuntu 连不上网如何排查原因
  • centos如何删除用户组里面的用户
  • win8怎么格式化硬盘
  • linux ./ 命令
  • linux下history命令显示历史指令记录的使用方法
  • win7主题服务未运行怎么办
  • 彻底理解样本方差为何除以n-1
  • android RecycleView 面试
  • 字符串转enum
  • nodejs中的session
  • python 压缩gz
  • JavaScript中OnLoad几种使用方法
  • android 签名文件冲突
  • unity鼠标控制物体移动
  • js中的函数怎么使用
  • 键盘搜索的快捷键
  • web miui
  • python 时间戳与格式化时间的转化实现代码
  • RadioGroup+Fragment实现底部菜单栏
  • java教程 视
  • 北京社保外埠城镇职工和外埠农村劳动力啥区别
  • 海关跟税务关系的区别
  • 服务业增值税率6% 购进13%手机怎么抵扣
  • 《税收实务》
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设