当前位置: 首页 > 面试题库 >

如何解决Python中的“ ImportError:没有名为…的模块”错误?

皇甫才良
2023-03-14
问题内容

解决此ImportError错误的正确方法是什么?

我有以下目录结构:

/home/bodacydo
/home/bodacydo/work
/home/bodacydo/work/project
/home/bodacydo/work/project/programs
/home/bodacydo/work/project/foo

我在目录中

/home/bodacydo/work/project

现在,如果我输入

python ./programs/my_python_program.py

我立刻得到

ImportError: No module named foo.tasks

./programs/my_python_program.py包含以下行:

from foo.tasks import my_function

我不明白为什么python找不到./foo/tasks.py-它在那里。

如果我从Python外壳程序执行此操作,那么它将起作用:

python
>>> from foo.tasks import my_function

只有通过python ./programs/my_python_program.py脚本调用它才行。


问题答案:

Python不会将当前目录添加到sys.path,而是将脚本所在的目录添加/home/bodacydo/work/project到。添加到sys.path$PYTHONPATH



 类似资料:
  • 问题内容: 我在Windows 7操作系统上运行Python 2.7 这是我运行的: 然后我得到这个: 现在,我从这里下载了六个:https : //pypi.python.org/pypi/six 我解压缩了它,如果我从那里打开一个名为setup.py的文件,然后尝试导入matplotlib,那么它可以工作,但是我不必每次想作图时都必须这样做吗?没有办法让它自动工作吗? 问题答案: 您需要在系统

  • 问题内容: 我在Windows 7上使用python 3.4。为了打开一个doc文件,我正在使用此代码 我不确定为什么每次都会弹出此错误 ImportError:没有名为win32api的模块 虽然我已经从http://www.lfd.uci.edu/~gohlke/pythonlibs/#pywin32安装了pywin32, 并且我还检查了导入路径…我也尝试过重新安装pywin32,但这并没有消

  • 我在Python 3中安装软件包遇到了麻烦。 我一直使用安装软件包。但现在,当我尝试安装ansicolors软件包时,我得到了: 我不知道该怎么做,因为我没有安装setupool在过去。尽管如此,我还是能够安装许多包与没有setupols。为什么我现在应该安装工具? 我甚至不能安装setuptools,因为我有python3.3,而setuptools不支持python3。 为什么我的instal

  • 问题内容: 我已经使用命令安装了redis,但是当我运行Python程序时收到此错误: 知道发生了什么问题还是我也应该安装其他软件包?我正在使用Ubuntu 13.04,并且具有Python 2.7。 问题答案: 要安装redis-py,只需: 或者(您确实应该使用点子): 或从来源: 入门 详细信息:https : //pypi.python.org/pypi/redis

  • 问题内容: 由于某种原因,我不能使用or模块。在python shell中运行以下命令后 要么 我得到这个错误 ModuleNotFoundError:没有名为“ Tkinter”的模块 要么 ModuleNotFoundError:没有名为“ tkinter”的模块 可能是什么原因,我们如何解决呢? 问题答案: 您可能需要使用以下一种(或类似的方式)安装它: 您也可以针对python 3.7提及

  • 问题内容: 我在 Google App Engine的Python 使用Google Translate API时遇到此错误,但是我不知道如何解决, 我将尝试 设置指示Google App Engine SDK的环境 ,然后再次上传到Google Apps Engine, 始终会收到错误消息 , 错误:服务器错误 服务器遇到错误,无法完成您的请求。如果问题仍然存在,请报告您的问题并提及此错误消息以