【问题标题】:How can I import variables from parent directory?如何从父目录导入变量?
【发布时间】:2019-04-25 10:59:55
【问题描述】:

我只想在父目录中导入带有超参数的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

进口应该怎么做?

【问题讨论】:

  • 您尝试运行哪个脚本?
  • from Project.hparams import *
  • 不,您运行哪个脚本? cnn.py我猜?
  • 我正在尝试运行 main.py。 cnn.py 用于模型架构

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


【解决方案1】:

你需要告诉 python 在哪里寻找这个文件,你不能像你试图做的那样默认做。此外,正如您的目录架构所建议的那样,您需要查看文件dataset.py 的父目录的父目录 才能访问hparams.py。 所以你可以做的就是在dataset.py开头添加这两行代码

import sys
sys.path.insert(0, '..\..')

然后你可以像往常一样执行from hparams import *import hparams。 关于sys.path.insertHere的更多信息

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-24
    • 2013-11-09
    • 2021-09-08
    • 2019-11-10
    • 1970-01-01
    • 2016-12-27
    • 2013-05-22
    • 2012-05-28
    相关资源
    最近更新 更多