从文件导入模块不起作用

时间:2018-05-16 12:47:54

标签: python

我正在运行jupyter-notebook文件(file.ipynb)并尝试从文件夹“utils”中的python文件“gradient_check”导入模块“eval_numerical_gradient”。但是,以下代码不起作用。

from utils.gradient_check import eval_numerical_gradient

然后我尝试使用此代码:

import sys
sys.path.append("/Users/W/dlp/src/03/utils")
import gradient_check
from gradient_check import eval_numerical_gradient

我的问题是上述两种方式有什么不同,是否可以让第一个代码解决?

1 个答案:

答案 0 :(得分:1)

只是因为你在文件夹utils下面有它不会使utils成为一个包。如果要将其定义为__init__.py,则需要utils文件夹下的module文件。

__init__.py :(将它放在utils文件夹下)

from .gradient_check import eval_numerical_gradient

file.ipynb

import sys
sys.path.append("/Users/w/dlp/src/03")
from utils import eval_numerical_gradient