一文详解Python为什么要写__init__.py

 更新时间:2025年03月13日 10:17:22   作者:@Dai  
这篇文章主要介绍了Python为什么要写__init__.py的相关资料,__init__.py文件可以包含包的初始化环境变量、公共接口、包的信息以及通过__all__变量控制模块的公开接口,需要的朋友可以参考下

正常我们直接导入就可以执行,但是在package的时候,有一种__init__.py的特殊存在

引入moduleA.py,执行main.py,输出moduleA

PackageA(__init__特性)

加入package,在PackageA中加入__init__.py,优先执行__init__.py

应该往__init__.py里放什么东西?

1、包的初始化

环境变量、logging等

2、管理包的公共接口

包需要在外面被使用的东西

如果在main里引用moduleA里的x变量,会报错
ImportError: cannot import name 'x' from 'PackageA' (D:\Desktop\Python\Base\initPy\PackageA\__init__.py)

这样就需要在__init__.py中先引用

__all__的用法通过*引入的话,all中的值才能被引用

3、包的信息

版本 version作者 author

print("成大事者,不拘小节")

总结 

到此这篇关于Python为什么要写__init__.py的文章就介绍到这了,更多相关Python为什么写__init__.py内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python快速建立超简单的web服务器的实现方法

    python快速建立超简单的web服务器的实现方法

    某些条件测试,需要一个简单的web服务器测试一下,为此专门去配置个nginx 或者 apache服务器略显麻烦,这里就为大家介绍一下使用python快速建立超简单的web服务器的方法,需要的朋友可以参考下
    2018-02-02
  • Python实现音频添加数字水印的示例详解

    Python实现音频添加数字水印的示例详解

    数字水印技术可以将隐藏信息嵌入到音频文件中而不明显影响音频质量,下面小编将介绍几种在Python中实现音频数字水印的方法,希望对大家有所帮助
    2025-04-04
  • python用装饰器自动注册Tornado路由详解

    python用装饰器自动注册Tornado路由详解

    这篇文章主要给大家介绍了python用装饰器自动注册Tornado路由,文中给出了三个版本的解决方法,有需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-02-02
  • tensorflow多维张量计算实例

    tensorflow多维张量计算实例

    今天小编就为大家分享一篇tensorflow多维张量计算实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • python多线程之事件Event的使用详解

    python多线程之事件Event的使用详解

    本篇文章主要介绍了python多线程之事件Event的使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • 简单了解python中对象的取反运算符

    简单了解python中对象的取反运算符

    这篇文章主要介绍了简单了解python中对象的取反运算符,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • python pandas移动窗口函数rolling的用法

    python pandas移动窗口函数rolling的用法

    今天小编就为大家分享一篇python pandas移动窗口函数rolling的用法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-02-02
  • 在Python中使用defaultdict初始化字典以及应用方法

    在Python中使用defaultdict初始化字典以及应用方法

    今天小编就为大家分享一篇在Python中使用defaultdict初始化字典以及应用方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • 关于使用OpenCsv导入大数据量报错的问题

    关于使用OpenCsv导入大数据量报错的问题

    这篇文章主要介绍了使用OpenCsv导入大数据量报错的问题 ,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • 三步教会你完全离线搭建openwebui

    三步教会你完全离线搭建openwebui

    这篇文章主要介绍了在无网络环境下搭建Linux版openwebui的详细步骤,包括下载依赖包、拷贝whl包到无网络环境进行安装、解决安装过程中可能出现的问题,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2025-02-02

最新评论