无法使用Python在不同目录中导入文件

时间:2016-03-30 12:01:50

标签: python

我在/home/amit/folder1/folder2/folder3/folder4/folder5/nbsearch有一个名为 neighbourhoodsearch.py​​ 的python模块。我已将此文件中的一个类包含在名为 nbsearch_controller.py /home/amit/folder1/folder2/folder3/folder4/controller的另一个模块中。

from neighbourhoodsearch import NeighbourhoodSearch

我已使用/home/amit/folder1/folder2/folder3/folder4/folder5/nbsearch将路径sys.path.append添加到PYTHONPATH,并在路径中的所有文件夹中添加了文件 __ init __。py 。但是当我运行文件nbsearch_controller.py时,它说

ImportError: No module named neighbourhoodsearch

2 个答案:

答案 0 :(得分:0)

您可以尝试多种方法:

  • 对您提供的路径中的拼写错误进行三重检查
  • 在您有问题的sys.path之前打印import并确保您的路径确实在那里
  • 如果您有一些
  • ,请删除目录结构中的.pyc个文件
  • 检查os.path.isfile("/home/amit/folder1/folder2/folder3/folder4/folder5/nbsearch/neighbourhoodsearch.py")的结果(它应该返回True

  • 检查您是否已阅读" Python文件的权利

答案 1 :(得分:-1)

请参阅此问题:Import a module from a relative path

你有 init .py文件,所以你应该很好。