本地存储库中的ModuleNotFoundError

2024-04-19 12:54:36 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经克隆了一个git回购,现在它在我的机器上是本地的。 在路径Pipes/Filtering中有一个名为filter_pileup_by_site_list.py的脚本,我正在尝试使用它,它是一个docopt CLI,因此我将转到上面提到的目录,并在终端中键入以下内容:python filter_pileup_by_site_list.py Filter_pileup_by_site <parameters>
脚本从repo中的另一个目录导入一个类,其路径为:Pipes/Utility
我上面编写的命令失败并返回以下错误:

  File "filter_pileup_by_site_list.py", line 16, in <module>
    from Utility.Pileup_class import Pileup_line
ModuleNotFoundError: No module named 'Utility'

我遇到的所有解决方案都与PYTHONPATH有关,所以我编辑了它,现在当我在终端echo $PYTHONPATH中键入时,我得到了/Pipes:/Pipes/Utility:/Pipes/Filtering:/Pipes/:/Bigdata/bioinf/Pipes3:/Bigdata/bioinf/Pipes:/Bigdata/users/eliran/Pipes
它仍然返回我以前的回溯轨迹

如果真的有什么关系的话,我正在使用LinuxMint


Tags: py路径目录脚本终端by键入site
2条回答

有效的解决方案:

在脚本顶部添加以下行:

import sys  
sys.path.insert(1, 'path/to/another/directory')

下面的工作原理是因为默认情况下python只在本地文件夹中查找文件,所以我必须添加上面的行,告诉它在上一个文件夹中搜索,以便它可以找到Utility文件夹

相关问题 更多 >