当前位置: 首页 > article >正文

【Python】为什么要写__init__.py

文章目录

  • PackageA(`__init__特性`)
  • 应该往__init__.py里放什么东西?
    • 1、包的初始化
    • 2、管理包的公共接口
    • 3、包的信息

正常我们直接导入就可以执行,但是在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("成大事者,不拘小节")

http://www.kler.cn/a/578585.html

相关文章:

  • QT多线程
  • uploadlabs通关思路
  • 排列组合定义及基本公式
  • 深度学习|自监督学习新星:DINO 解析与实践指南
  • 一致性哈希函数处理负载均衡(简单实现,勿喷)
  • Python|基于DeepSeek大模型,自动生成语料数据(10)
  • 【技术方案设计】H5埋点方案设计以及实现(入门版)
  • 电路的一些设计经验
  • 学习笔记:Python网络编程初探之基本概念(一)
  • 基于AT89C51单片机的家用全自动洗衣机设计
  • 【Godot4.4】浅尝Godot中的MVC
  • iOS安全和逆向系列教程 第17篇:探讨ARM64架构与Swift逆向分析技术
  • PH|EH————meta
  • 物联网的隧道监测场景中,要实现全面且有效的监测
  • Blueprint —— Blueprint Editor(二)
  • rkipc控制ircut的分析
  • SQL Server查询计划操作符(7.3)——查询计划相关操作符(10)
  • 芋道打包时报错:缺失@unocss插件
  • 前端知识点---路由模式-实例模式和单例模式(ts)
  • .NET CAD 二次开发中的 Transform 与数学矩阵详解