【问题标题】:What is causing Import Error: "no module named modules"?是什么导致导入错误:“没有名为模块的模块”?
【发布时间】:2017-05-31 18:44:36
【问题描述】:

我正在开发我的第一个开源项目。

在为项目进行所有设置时,我一步一步地按照 README.md 进行操作。

现在,我遇到了一个问题。当我尝试运行测试和 src 脚本时,出现以下错误,

ImportError: No module named modules

现在,下面是文件结构。

../
   /modules
        __init__.py
        /src
            lyrics.py 
        /tests
            test_lyrics.py 

lyrics.py 导入语句

import modules

def test_lyrics():
    assert('lyrics' == modules.process_query('paradise lyrics')[0])

这是错误“导入错误:未找到模块”的地方。

是的,自述文件中的所有要求都已满足。

如果您想查看该项目,请查看on github

【问题讨论】:

  • 您是否在sys.pathPYTHONPATH 中包含了modules 的父目录?
  • 可能是您在运行命令时进入了错误的目录。当前工作目录默认在sys.path
  • ... 为什么你有一个__init__.py src 目录?还有为什么lyrics.py 试图做一些似乎应该放在test_lyrics.py 中的事情?通常测试工具会自动将src 目录放在你的PYTHONPATH 中。顺便说一句:github 链接指向 404 页面,可能您的存储库是私有的?

标签: python python-2.7


【解决方案1】:

可能是您的 PYTHONPATH 没有读取您的模块目录。要检查这一点,请转到您的主目录并查找.bashrc 或某种.profile 文件。您可能必须使用ls -a 才能查看这些隐藏文件。如果您没有看到列出的模块地址,请将其添加到文件中:

export PYTHONPATH="${PYTHONPATH}:/my/module/path"

确保地址指向您的最高级别 __init__.py 文件的目录,因为 python 使用它来将目录作为 python 包读取。

【讨论】:

    猜你喜欢
    • 2020-11-05
    • 2018-07-10
    • 2015-11-30
    • 2012-05-25
    • 2012-03-16
    • 2011-12-10
    • 2016-07-18
    • 2018-07-06
    相关资源
    最近更新 更多