gpt4 book ai didi

python - 导入同一模块中定义的类

转载 作者:行者123 更新时间:2023-11-30 23:26:20 25 4
gpt4 key购买 nike

我在使用模块中定义的类时遇到问题。我看过this stackoverlfow post ,答案似乎是“你不需要进口”。这绝对不是我所经历的行为。我正在使用Python 3.3。这是我的目录结构:

root/
__init__.py
mlp/
__init__.py
mlp.py
layers/
__init__.py
hidden_layer.py
dropout_layer.py

我的问题是这样的:dropout_layer.py中定义的类扩展了hidden_​​layer.py中的类,但是当我尝试导入hidden_​​layer时,有时会出现错误取决于我执行代码的目录。例如,如果我从 root/mlp 执行代码,那么我将运行我的代码。但是,如果我从 root 执行代码,则此导入不起作用。这对我来说是奇怪的行为。我怎样才能让它正常工作?

我唯一的非空 __init__.py 文件位于 root/mlp/layers/ 中:

# root/mlp/layers/__init__.py
__all__ = ['hidden_layer', 'dropout_layer']

最佳答案

在 Python 3 中,您可以在相对于当前模块位置的导入前添加 .:

from .hidden_layer import HiddenLayer

关于python - 导入同一模块中定义的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22585256/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com