【问题标题】:PyCharm: ImportError no module named X?PyCharm:ImportError 没有名为 X 的模块?
【发布时间】:2019-06-07 10:43:40
【问题描述】:

X 在此示例中代表您安装的任何模块或包。

问题

我对名为 'X' 的包有疑问。 在 PyCharm 中,我收到一个错误 ImportError: No module named 'X'. 我的代码从终端运行没有任何问题。有什么帮助吗?

我用 pip 在 python3.4 上安装了 X。在终端中,当我导入 X 时,一切都很好,但是当我在 PyCharm 中导入它时,它会显示:ImportError: No module named 'X'"。有什么帮助吗?


这基本上是日常问题,只是用不同的模块或包代替名称而不是 X

在您安装的包或模块中没有问题,它在您当前用于项目的 PyCharm 项目解释器中。

以下答案通常是针对这个特定问题的解决方案。

【问题讨论】:

    标签: python pip pycharm package importerror


    【解决方案1】:

    短版:

    如果您在导入的模块下方有波浪线...

    ...移动模块名称并按Alt+Enter并选择Install package X

    这应该(可能 !!!)安装您认为已安装的模块,但得到了ImportError


    更长:

    如果你想使用模块X

    转到File -> Settings -> Project:NameOfProject -> Project Interpreter

    打开的窗口有一些特定区域:

    1. 这是 PyCharm 当前使用的项目解释器。您也可以在此处更改您的 python 环境。如果要添加手动创建的虚拟环境,请继续阅读。
    2. "cog""gear" 用于添加、编辑或删除 环境。如果您想添加手动创建的虚拟环境,请在单击齿轮图标时选择Add...,并确保将正确的路径设置为您的虚拟环境的python.exe
    3. 重要提示:所有已安装包的列表,由包名称版本表示。如果您尝试使用包,但得到了ImportError no module named 'X'请务必检查包是否在此处列出!!!。如果没有,说明当前python环境中没有安装,应该安装(继续阅读)。
    4. 一点+代表Install。它可用于安装软件包。只需点击+符号,搜索一个包,找到后点击底部的Install Package。您还可以指定所需的软件包版本。在下面的示例中,我们搜索了flask 包。

      现在应该安装一个包并将其列在已安装的包中。

    【讨论】:

      【解决方案2】:

      PyCharm 使用自己的 Python 解释器为您的项目创建一个虚拟环境,您需要为您正在使用的解释器安装模块。为此,请转到 Settings -> Project: yourProjectName -> Python Interpreter,单击加号图标并选择您要安装的模块。 或者,您可以强制 PyCharm 使用您的其他解释器,方法是从我之前提到的 Python 解释器设置页面顶部的下拉列表中选择它。

      【讨论】:

        【解决方案3】:

        这有很多原因。 我要在这里提出的原因和解决方法是非常罕见,只是决定提出它,希望至少有一个人可以从这个答案中获得帮助。

        问题

        PyCharm 将 __init__.py 视为非 python 文件。

        当您忘记在 您的代码的 __init__.py 文件中使用 .py 扩展名,然后您稍后添加扩展名时,就会发生这种情况。然后 pycharm 开始将所有 __init__.py 文件(甚至外部库文件)视为非 python。有多奇怪?

        检测是否是这个问题

        滚动单击库名称(不是模块名称)。

        或右击并转到Declaration or Usages

        您将看到库的 __init__.py 为纯文本。

        如果您将代码视为纯文本,那就是问题所在!

        解决方案

        在 pycharm 导航中查找文件位置。如果使用虚拟环境,文件填写venv/lib/site-packages/{library_name}

        右击__init__.py,点击覆盖文件类型。选择python。

        你会看到错误消失了!

        【讨论】:

          猜你喜欢
          • 2015-08-17
          • 2019-12-02
          • 2019-05-19
          • 2020-10-03
          • 1970-01-01
          • 2021-05-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多