__init__.py 有什么用? [英] What is __init__.py for?

查看:40
本文介绍了__init__.py 有什么用?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

__init__.py 在 Python 源目录中的作用是什么?

What is __init__.py for in a Python source directory?

推荐答案

它曾经是一个包的必需部分 (旧的 3.3 之前的常规包",而不是 较新的 3.3+命名空间包").

It used to be a required part of a package (old, pre-3.3 "regular package", not newer 3.3+ "namespace package").

这是文档.

Python 定义了两种类型的包,常规包和命名空间包.常规包是传统包,因为它们存在于 Python 3.2 及更早版本中.常规包通常被实现为包含 __init__.py 文件的目录.当一个普通包被导入时,这个 __init__.py 文件被隐式执行,并且它定义的对象被绑定到包的命名空间中的名称.__init__.py 文件可以包含与任何其他模块可以包含的相同的 Python 代码,并且 Python 在导入时会为该模块添加一些额外的属性.

Python defines two types of packages, regular packages and namespace packages. Regular packages are traditional packages as they existed in Python 3.2 and earlier. A regular package is typically implemented as a directory containing an __init__.py file. When a regular package is imported, this __init__.py file is implicitly executed, and the objects it defines are bound to names in the package’s namespace. The __init__.py file can contain the same Python code that any other module can contain, and Python will add some additional attributes to the module when it is imported.

但只需单击链接,它包含一个示例、更多信息和命名空间包的解释,没有__init__.py 的那种包.

But just click the link, it contains an example, more information, and an explanation of namespace packages, the kind of packages without __init__.py.

这篇关于__init__.py 有什么用?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆