详解python __init__.py 和 __all__作用

作者:lizi0403 时间:2023-08-22 06:55:22 

python __init__.py 和 __all__作用

一、__init__.py

1、导入文件夹包的时候,会运行写在该文件夹包下的__init__.py文件

如 import package

import package.xxx

from package import xxx 等

这样会自动运行package文件夹下的__init__.py文件

2、__init__.py文件中可以定义该文件夹包的名字空间,定义的方法就是在__init__.py文件里导入这些名字

如在package文件夹下的__init__.py文件里,可以导入该文件夹下的所有py文件(模块),这样就将所有模块名导入了package的名字空间:

如package文件夹下有file1.py和file2.py两个模块

在package的__init__.py里from . import *就将file1和file2导入了package的名字空间

这样在别处import package导入package包,就可以正常写调用语句如package.file1.func(), package.file2.func()

二、__all__属性

文件夹包下的__ini__.py文件里可以定义__all__属性,作用是在别处模糊导入该包中的所有名字时(from package import *),可以隐藏包中名字空间中的一些名字

补充:python 包 __init__ .py 作用 和 __all__方法

__init__.py的主要作用:

1. Python中package的标识,不能删除

2. 定义__all__用来模糊导入

3. 编写Python代码(不建议在__init__中写python模块,可以在包中在创建另外的模块来写,尽量保证__init__.py简单)

__all__的作用:

模糊导入中的*中的模块是由__all__来定义的,__init__.py的另外一个作用就是定义package中的__all__,用来模糊导入,如__init__.py:

详解python __init__.py 和 __all__作用

来源:https://blog.csdn.net/qq_41021141/article/details/128933527

标签:python,init,.py,all
0
投稿

猜你喜欢

  • 属性与 @property 方法让你的python更高效

    2023-02-02 08:20:18
  • java 中JDBC连接数据库代码和步骤详解及实例代码

    2024-01-27 16:35:14
  • Python实现删除windows下的长路径文件

    2023-06-07 22:33:18
  • Yii框架实现乐观锁与悲观锁流程详解

    2023-11-16 13:38:38
  • Python 删除List元素的三种方法remove、pop、del

    2021-06-14 20:58:52
  • 什么是XSLT,什么是XPath

    2008-01-21 13:12:00
  • 什么样的分页案例才是好的

    2007-11-23 19:08:00
  • 解析Mysql Profiling的使用

    2024-01-25 23:44:05
  • 使用python检查值是否已经存在于字典列表中

    2023-10-25 03:08:21
  • axios 拦截器管理类链式调用手写实现及原理剖析

    2023-07-02 16:38:23
  • 运用Python巧妙处理Word文档的方法详解

    2023-11-13 16:58:29
  • python发布模块的步骤分享

    2023-08-07 11:29:25
  • 解决Python中定时任务线程无法自动退出的问题

    2022-09-05 22:52:52
  • SQL Server 总结复习 (二)

    2024-01-22 23:14:50
  • php控制反转与依赖注入举例讲解

    2023-06-10 10:30:22
  • Python实现字典序列ChainMap

    2022-07-01 21:34:56
  • pycharm设置虚拟环境与更换镜像教程

    2023-06-10 06:58:05
  • 一文带你了解MySQL中触发器的操作

    2024-01-13 13:22:11
  • python对json的相关操作实例详解

    2022-03-27 20:15:06
  • python利用标准库如何获取本地IP示例详解

    2021-10-17 07:46:07
  • asp之家 网络编程 m.aspxhome.com