如何为模块编写python _uinit__u;.py文件

2024-09-29 09:34:00 发布

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

如果我有这样的模块文件夹结构:

studio
    tools
        __init__.py
        camera
            __init__.py
            camera.py
        element
            __init__.py
            element.py

如何编写uuu init_uuuuu.py文件,以便编写如下导入语句?在camera模块中有一个名为CameraNode的类对象,我想调用它,如下面的示例所示

from studio import tools
    
tools.camera.fn()
tools.CameraNode('')
tools.element.fn()

Tags: 模块文件py文件夹initelement语句结构
2条回答

如果您有这样一个studio/tools/__init__.py文件:

from .camera import *
from .element import *

然后,您可以在其他地方执行单个导入,如:

from studio import tools

然后引用所有内容,就好像它直接在studio.tools中一样

不确定这是否准确地回答了你的问题,但希望它能让你朝着正确的方向前进

__init__py文件允许您将任何目录视为python包。无需在文件本身中写入任何内容,只需在目录中创建即可

因此cameraelementtools可以作为包

但是,如果您也想访问子目录中的python文件,则必须导入父目录的__init__.py中的文件

例如,如果要执行tools.camera,则必须在工具目录的__init__.py中导入camera

否则,您必须单独导入camera才能访问其中的所有函数

希望这能回答你的问题

相关问题 更多 >