如何构造Python包?

2024-09-21 00:26:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我有我的大部分代码项目.py需要第二个文件,其他文件.py. 目前,我只是将它们作为两个独立的模块安装,使用相同的setup.py(使用pyïu modules变量),但我认为现在是时候对它们进行适当的打包了项目.py正在增长,我可能需要进一步拆分。你知道吗

用户只需要与中的某些类和函数进行交互项目.py因此,为了保持兼容性,我想使用以下结构:

project/
    __init__.py  # (renamed from project.py)
    otherfile.py

但是我读到__init__.py应该保持几乎为空。另一种选择是:

project/
    __init__.py
    project.py
    otherfile.py

要将用户可以看到的project.py中的所有内容导入__init__.py,因为我希望避免为用户添加额外的命名空间:

import project.project

我不确定这是否真的重要,但我想用“正确的方式”做事。你知道吗


Tags: 模块文件项目函数代码用户frompy
1条回答
网友
1楼 · 发布于 2024-09-21 00:26:53

您可以使用第二种结构,但在__init__.py中,只需。。。你知道吗

from .project import PublicClass1
from .project import PublicClass2
from .project import PUBLIC_CONSTANT_A
...

基本上,只在__init__.py中导入您真正想要公开的内容,同时保持__init__.py基本上没有代码逻辑。你知道吗

相关问题 更多 >

    热门问题