我有一个Jupyter笔记本,我想使用我电脑中其他文件夹的本地python函数。 当我导入这些函数时,我收到此错误: " ModuleNotFoundError:没有名为&x; xxxxxxxxxxxxx'
的模块答案 0 :(得分:2)
您可以使用sys
将路径添加到本地模块/ python文件中。
import sys
sys.path.append("/path/to/file/") # path contains python_file.py
import python_file
如果您想通过向Anaconda路径添加模块来获得更持久的解决方案,请参阅cord-kaldemeyer https://stackoverflow.com/a/37008663/7019148的上一个答案。下面复制的内容是为了完整性:
我在Anaconda论坛上找到了我的问题的两个答案:
1。)将模块放入site-packages中,即$ HOME / path / to / anaconda / lib / pythonX.X / site-packages目录,它始终打开 sys.path中。这也可以通过创建符号链接来实现。
2.。)将.pth文件添加到$ HOME / path / to / anaconda / lib / pythonX.X / site-packages目录中。这可以命名 任何东西(它必须以.pth结尾)。 .pth文件只是一个 以换行符分隔的目录的完整路径名列表 将在Python启动时添加到您的路径中。
两者都很直接,我选择了第二个选项 更灵活。
***更新:
3.。)在软件包的文件夹中创建一个setup.py并使用pip install -e / path / to / package安装它,这是最干净的选项 从我的角度来看,因为你也可以看到所有安装使用 点子列表。
非常感谢!
答案 1 :(得分:2)
看,在python 2.7上它会起作用,但是在python 3上你会遇到一些错误......
如果您在其他文件中编写某些函数,则需要导入此文件。如果这个文件在同一个文件夹中 - 这很好。但如果在子文件夹中...在子文件夹中,则需要创建空文件 init .py
现在,如果您尝试从子文件导入模块 - 也将工作
无能为力(对于python 3):
使用此代码
import os
import sys
sys.path.append(os.getcwd() + '/modules')
import my_module

答案 2 :(得分:1)
如果您还没有,请尝试在代码中使用该函数的完整路径名。
Folder1
__init__.py
将是与主程序位于同一目录中的文件夹。
另外,在导入的每个文件夹中创建一个名为println(doc.toString());
的空文件。