如何从父目录导入变量?

时间:2019-04-25 10:59:56

标签: python python-3.x python-import

我只想在父目录中导入带有超级参数的python文件,但是我刚收到系统错误。

父模块“”未加载,无法执行相对导入

目录结构如下。

Project directory
+-- package
|   +-- dataset
|   |   +-- __init__.py
|   |   +-- dataset.py
|   +-- models
|       +-- __init__.py
|       +-- cnn.py
+-- __init__.py
+-- hparams.py
+-- main.py

我想做的是在dataset.py中导入hparams.py的变量

我尝试了以下几行,但是这些都不行。

from ..hparams import * 

from ...hparams import *

from .. import hparams

from ... import hparams

我应该如何导入?

1 个答案:

答案 0 :(得分:0)

您需要告诉python在哪里寻找该文件,默认情况下您无法像尝试这样做那样去做。此外,正如目录体系结构所建议的那样,您需要在文件dataset.py的父目录的父目录中查找以访问hparams.py。 因此,您只需在dataset.py

的开头添加这两行代码
import sys
sys.path.insert(0, '..\..')

然后,您可以照常执行from hparams import *import hparams。 有关sys.path.insert Here

的更多信息