解决:[Fixed] ModuleNotFoundError:没有名为'networkx'的模块 您所在的位置:网站首页 python的networks 解决:[Fixed] ModuleNotFoundError:没有名为'networkx'的模块

解决:[Fixed] ModuleNotFoundError:没有名为'networkx'的模块

2024-03-07 15:53| 来源: 网络整理| 查看: 265

快速修复。当Python找不到库时,会引发 ImportError: No module named '`networkx`'当它找不到库networkx 的时候,就会出现这个错误最常见的原因是你没有把networkx 和pip install networkx 一起明确安装。另外,你的计算机上可能有不同的Python 版本,而networkx 并没有为你所使用的特定版本安装。

问题的提出

你刚刚了解了networkx 库的强大功能,你想尝试一下,所以你用以下语句开始你的代码。

import networkx

这应该是将Pandas库导入你的(虚拟)环境中。然而,它只抛出了下面的ImportError: No module named networkx 。

>>> import networkx Traceback (most recent call last): File "", line 1, in import networkx ModuleNotFoundError: No module named 'networkx' 解决思路1:安装库networkx

最有可能的原因是,Python 在其标准库中没有提供networkx 。你需要先安装它!

在能够导入Pandas模块之前,你需要用Python的软件包管理器pip 。请确保你的机器上已经安装了 pip。

为了解决这个错误,你可以在你的Windows shell中运行以下命令。

$ pip install networkx

这个简单的命令在你的Windows、Linux和MacOS的虚拟环境中安装了networkx 。它假定你的pip 版本已经更新。如果它不是,请在你的终端、命令行或shell中使用以下两个命令(无论如何这样做都没有坏处)。

$ python -m pip install --upgrade pip $ pip install pandas

💡 注意:不要复制和粘贴 符号。这只是为了说明,你在你的shell/终端/命令行中运行它。$

解决思路2:修复路径

即使你已经安装了networkx 库,这个错误可能仍然存在。这很可能是因为pip 已经安装了,但不在你可以使用的路径中。尽管pip 可能已经安装在你的系统上,但脚本却无法找到它。因此,它无法使用pip 在正确的路径中安装该库。

要解决Windows中的路径问题,请按照下面的步骤进行。

第1步:打开安装Python的文件夹,在命令提示符下键入where python

第二步:一旦你打开了Python 文件夹,浏览并打开Scripts 文件夹并复制其位置。同时验证该文件夹是否包含pip 文件。

第3步:现在在命令提示符中使用cd 命令和你之前复制的位置打开Scripts 目录。

第4步:现在使用pip install networkx 命令安装库。下面是一个类似的例子。

在完成上述步骤后,再次执行我们的脚本。你应该得到所需的输出。

其他解决思路 ModuleNotFoundError 可能是由于相对进口而出现的。 你可能在你的机器上混淆了Python和pip的版本。在这种情况下,要为Python 3安装networkx ,你可能想用python3 -m pip install networkx ,甚至pip3 install networkx 来代替pip install networkx 如果你在服务器端遇到这个问题,你可能想试试以下命令pip install --user networkx 如果你使用的是Ubuntu,你可能想试试这个命令。 sudo apt install networkx 理解 "import" 语句 import networkx

在 Python 中,import 语句有两个主要用途。

通过模块的名字搜索模块,加载它,并初始化它。 在import 语句的范围内,在本地命名空间定义一个名字。然后在整个代码中使用这个本地名称来引用被访问的模块。 ImportError和ModuleNotFoundError之间的区别是什么?

ImportError 和ModuleNotFoundError 之间的区别是什么?

Python 定义了一个错误层次结构,所以一些错误类继承于其他错误类。在我们的例子中,ModuleNotFoundError 是ImportError 类的一个子类。

你可以在文档的这个截图中看到这一点。

你也可以使用 [issubclass()](https://blog.finxter.com/python-issubclass/)内置函数来检查这种关系。

>>> issubclass(ModuleNotFoundError, ImportError) True

具体来说,如果找不到模块 (例如,networkx),Python 会引发ModuleNotFoundError 。如果可以找到,可能是加载模块或模块中的某些特定文件出现了问题。在这些情况下,Python 会引发一个ImportError 。

如果一个导入语句不能导入一个模块,它会引发一个 ImportError.这可能是由于错误的安装或无效的路径造成的。在Python 3.6 或更新的版本中,这通常会引发一个 ModuleNotFoundError.

如何解决 "ModuleNotFoundError:没有名为'networkx'的模块 "在PyCharm中。

如果你在PyCharm 中创建了一个新的Python项目,并试图导入networkx 库,它就会引发以下错误信息。

Traceback (most recent call last): File "C:/Users/.../main.py", line 1, in import networkx ModuleNotFoundError: No module named 'networkx' Process finished with exit code 1

原因是每个 PyCharm 项目,默认都会创建一个虚拟环境,你可以在其中安装自定义的 Python 模块。但是这个虚拟环境最初是空的--即使你已经在你的电脑上安装了networkx!

下面是一个截图,说明了这一点,对于 [pandas](https://blog.finxter.com/pandas-quickstart/)库的截图。networkx 也会出现类似的情况。

修复方法很简单。使用PyCharm 的安装工具提示,在你的虚拟环境中安装 Pandas--点击两下,你就可以开始了

首先,在你的编辑器中右键点击pandas 文本。

其次,在你的上下文菜单中点击 "Show Context Actions"。在出现的新菜单中,点击 "安装Pandas "并等待PyCharm完成安装。

在你的安装成功完成后,代码将运行。

作为一个替代方法,你也可以打开底部的Terminal 工具,然后输入。

$ pip install networkx

你也可以在 PyCharm 中使用下面的程序手动安装一个新的库,比如networkx 。

打开 **File > Settings > Project**从PyCharm菜单中打开 选择你当前的项目。 点击 **Python Interpreter**标签,在你的项目标签中。 点击小的 **+**符号来添加一个新的库到项目中。 现在键入要安装的库,在你的例子中是Pandas,然后点击 **Install Package**. 等待安装结束并关闭所有弹出的窗口。

这里有一个类似的例子。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有