【Python】为什么要写__init__.py

文章目录

正常我们直接导入就可以执行,但是在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

...


python 复制代码
print("成大事者,不拘小节")
相关推荐
涛声依旧13 小时前
基于springBoot鲜花商城小程序
java·spring·微信小程序
java1234_小锋13 小时前
[免费]基于Python的在线音乐网站系统(后端Django)【论文+源码+SQL脚本】
python·在线音乐·django音乐·python音乐·python在线音乐
尘埃不入你眼眸14 小时前
服务器安装Java与nginx与nacos
java·服务器·nginx
无垠的广袤14 小时前
【LattePanda Mu 开发套件】AI 图像识别网页服务器
服务器·人工智能·python·单片机·嵌入式硬件·物联网
Derrick__114 小时前
Python常用三方模块——Pillow
开发语言·python·pillow
小蕾Java14 小时前
PyCharm保姆级详细使用手册(Python新手快速上手篇)
ide·python·pycharm
阿星_14 小时前
PyCharm项目依赖库的备份与还原方法
linux·服务器·python
youcans_14 小时前
【Trae】Trae 插件实战手册(1)PyCharm 安装 Trae
人工智能·python·pycharm·ai编程·trae
karry_k14 小时前
什么是Fork/Join?
java·后端
xuegao080714 小时前
WSL安装并配置到pyCharm
ide·python·pycharm