Modulenotfounderror: no module named networkx

Encountering errors like modulenotfounderror: no module named networkx in Python is inevitable.

This kind of error usually appears when developers try to import a module that is not found in their system or Python environment.

In this article, we will show you the solution to this error.

You can easily fix this error by following the guide below, but before that, have a brief understanding of Python.

What is Python?

Python is one of the most popular programming languages.

It is used for developing a wide range of applications.

In addition, Python is a high-level programming language that is used by most developers due to its flexibility.

Returning to our issue, we must take a few actions to fix this error.

So, without further ado, let’s move on to our “how to fix this error” tutorial.

How to solve “no module named networkx” in Python

Time needed: 2 minutes

Here’s how to resolve the error message stating modulenotfounderror: no module named networkx in Python.

  1. Check if the module is installed.

    Resolving the error modulenotfounderror: no module named networkx is an easy task.

    All you have to do is install the networkx module if it is not already installed in your system.

    So, what you’ll do first is check if it is installed in your system.

    To check, open your cmd or command prompt, then input the command pip show networkx.

    pip show networkx - Modulenotfounderror: no module named networkx [SOLVED]

    This command will display information about the module, including its location.

    However, if it is not installed in your system, this message will appear:

    WARNING: Package(s) not found: networkx.

    If the result is this, move on to the next step.

  2. Install the networkx module.

    To install this module, input the command pip install networkx in your command prompt.

    pip install networkx - Modulenotfounderror: no module named networkx [SOLVED]

    The command pip install networkx will download and install the networkx module on your system.

    If you’re using Python 3, use the command pip3 install networkx.

See also: Modulenotfounderror: no module named ‘wget’

Note: If the networkx module is already installed in your system and this error occurred, follow the guide below.

  • Upgrade the module.

    To upgrade the networkx module, enter the command pip install –upgrade networkx in your command prompt.

    pip install --upgrade networkx

    Use this command to upgrade your module to its latest version.

    If it is already the latest version, this will come out: “Requirement already satisfied.”

Commands you might need

  • pip list

    This command will display all the packages installed on your system, including their versions.

    If you’re using Jupyter Notebook, use the !pip list command.

    However, if you’re using Anaconda, use the command conda list.

  • python -m

    Include this command in your pip install networkx command if you get an error message stating that “pip” cannot be found.

    Example: python -m pip install networkx

    However, if you’re using Python 3, use the command python3 -m pip install networkx.

  • pip install –upgrade pip

    Use this command to upgrade the pip package manager to its newest version.

    If your pip is already in the latest version, this will come out: “Requirement already satisfied.”

  • python –version

    Use this command if you want to check what version of Python you have.

Diagnostic checklist for “No module named ‘networkx'”

  • Verify pip install target. Run pip show networkx — if not installed, run pip install networkx.
  • Check the active Python interpreter. which python (mac/Linux) or where python (Windows). Both pip and python must point to the same environment.
  • Check virtual environment activation. If you use venv/conda, activate before installing: source .venv/bin/activate.
  • Rule out uppercase/lowercase. Python imports are case-sensitive: import PyPDF2 not import pypdf2.
  • Rule out the pip-vs-package-name mismatch. Some packages install under a different name than you import (e.g. pip install beautifulsoup4import bs4).

Installing networkx

# Standard pip install
pip install networkx

# In a virtual environment (recommended)
python -m venv .venv
source .venv/bin/activate  # or .venv\Scripts\activate on Windows
pip install networkx

# With uv (faster alternative)
uv pip install networkx

Common causes for “No module named ‘networkx'”

  • Python interpreter mismatch. Multiple Python installations can confuse pip. Verify with which python and which pip.
  • Virtual environment not activated. If the venv isn’t activated, pip installs to your system Python instead.
  • Notebook kernel mismatch. Jupyter uses a kernel that may differ from your terminal Python. Use %pip install networkx inside the notebook.
  • Import name differs from install name. pip install beautifulsoup4 → import bs4. Check the package’s PyPI page.
  • Windows PATH issues. Ensure Python is on PATH; use python -m pip install to invoke pip via the correct Python.

Working code example

# Verify install worked
import networkx
print(getattr(networkx, '__version__', 'no version attribute'))

Best practices

  • Always use a virtual environment. Avoids most module-not-found errors.
  • Use pip freeze to lock versions. pip freeze > requirements.txt makes your setup reproducible.
  • Consider uv or Poetry. Modern package managers with better dep resolution and reproducibility.

Frequently Asked Questions

What is Python ModuleNotFoundError and what causes it?

ModuleNotFoundError (a subclass of ImportError) is raised when Python cannot find the module you tried to import. Common causes: the package isn’t installed (pip install missing), wrong virtual environment activated, typo in module name, or Python can’t find your local module on the import path. The error message names exactly which module is missing.

How do I fix ‘ModuleNotFoundError: No module named X’?

Run pip install X first. If that succeeds but you still get the error, check which Python you’re using (which python OR python –version) vs which pip (which pip OR pip –version), they must match. Common gotcha: pip points to system Python 3.9 but you’re running python3.11 in a venv. Inside the venv, use python -m pip install X to be sure pip matches the active Python.

Why does my code work in one environment but not another?

Different Python versions or different installed packages. To diagnose: pip freeze > requirements.txt on the working environment, then pip install -r requirements.txt on the broken one. Use virtualenv (python -m venv venv) or conda for every project to avoid system-wide package collisions.

Is ModuleNotFoundError the same as ImportError?

ModuleNotFoundError is a subclass of ImportError added in Python 3.6. It specifically means ‘no such module exists.’ Plain ImportError covers a wider set: module exists but a name inside it can’t be imported (e.g. ‘cannot import name X from Y’). except ImportError catches both; except ModuleNotFoundError catches only the missing-module case.

Where can I find more ModuleNotFoundError fixes?

Browse the ModuleNotFoundError reference hub for 198+ specific module fixes (TensorFlow, Flask, Django, pandas, numpy, etc.). For related issues see ImportError. For broader Python setup see Python Tutorial hub.

Conclusion

In conclusion, the modulenotfounderror: no module named networkx can be easily solved by installing the networkx module in your system.

By following the guide above, there’s no doubt that you’ll be able to resolve this error quickly.

We hope you’ve learned a lot from this.

Thank you for reading!

Elijah Galero


Programmer & Technical Writer at PIES IT Solution

Elijah Galero is a programmer and writer at PIES IT Solution, author of 175+ tutorials at itsourcecode.com. Specializes in Python error debugging (AttributeError, TypeError, ModuleNotFoundError), Python programming tutorials, and Microsoft Excel how-to guides for BSIT students and productivity learners.

Expertise: Python · Python Errors · Python AttributeError · Python TypeError · ModuleNotFoundError · MS Excel · MS PowerPoint
 · View all posts by Elijah Galero →

Leave a Comment