ModuleNotFoundError:没有名为“setuptools_rust”的模块

ModuleNotFoundError:没有名为“setuptools_rust”的模块

ModuleNotFoundError: No module named ‘setuptools_rust’

Python “ModuleNotFoundError: No module named ‘setuptools_rust’” 发生在我们有一个过时的版本pip或忘记安装
setuptools_rust包时。要解决该错误,请升级pip并安装
setuptools_rust.

modulenotfounderror 没有名为 setuptools 的模块生锈

首先,确保您的pip版本是最新的。以下是pip在所有操作系统上升级的命令。

哪个命令有效取决于您的操作系统和 Python 版本。

# 👇️ if you have pip already installed pip install --upgrade pip # 👇️ if your pip is aliased as pip3 (Python 3) pip3 install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python -m pip install --upgrade pip # 👇️ if you don't have pip in your PATH environment variable python3 -m pip install --upgrade pip # 👇️ if you have easy_install easy_install --upgrade pip # 👇️ if you get a permissions error sudo easy_install --upgrade pip # 👇️ if you get a permissions error when upgrading pip pip install --upgrade pip --user # 👇️ upgrade pip scoped to the current user (if you get permissions error) python -m pip install --user --upgrade pip python3 -m pip install --user --upgrade pip # 👇️ Installing directly from get-pip.py (MacOS and Linux) curl https://bootstrap.pypa.io/get-pip.py | python # 👇️ if you get permissions issues curl https://bootstrap.pypa.io/get-pip.py | sudo python # 👇️ alternative for Ubuntu/Debian sudo apt-get update && apt-get upgrade python-pip # 👇️ alternative for Red Hat / CentOS / Fedora sudo yum install epel-release sudo yum install python-pip sudo yum update python-pip

如果您收到错误“ModuleNotFoundError:Python 中没有名为‘pip’的模块”,请查看我的另一篇文章:

现在您的pip版本是最新的,请安装
setuptools-rust

# 👇️ in a virtual environment or using Python 2 pip install setuptools-rust # 👇️ for python 3 (could also be pip3.10 depending on your version) pip3 install setuptools-rust # 👇️ if you get permissions error sudo pip3 install setuptools-rust pip install setuptools-rust --user # 👇️ if you don't have pip in your PATH environment variable python -m pip install setuptools-rust # 👇️ for python 3 (could also be pip3.10 depending on your version) python3 -m pip install setuptools-rust # 👇️ using py alias (Windows) py -m pip install setuptools-rust # 👇️ for Anaconda conda install -c conda-forge setuptools-rust # 👇️ for Jupyter Notebook !pip install setuptools-rust

如果错误未解决,请尝试安装setuptools

打开终端并运行以下命令来安装setuptools.

# 👇️ for Linux or MacOS python3 -m pip install --upgrade pip setuptools wheel # 👇️ Windows py -m pip install --upgrade pip setuptools wheel pip3 install --upgrade pip setuptools

如果错误未解决,请尝试卸载setuptools然后安装该模块。

# 👇️ uninstall setuptools pip3 uninstall setuptools # 👇️ install setuptools pip3 install setuptools # 👇️ if you don't have pip set up in PATH python3 -m pip install setuptools

或者,您可以使用
官方的 get-pip脚本来安装setuptools.

通过单击链接,右键单击并在浏览器中选择“另存为”,从https://bootstrap.pypa.io/get-pip.py下载脚本

在下载文件的位置打开终端get-pip.py并运行以下命令。
# 👇️ On Linux or MacOS python get-pip.py # 👇️ using python 3 python3 get-pip.py # 👇️ On Windows py get-pip.py

get-pip.py脚本安装或升级pip并安装setuptools
wheel如果它们尚未安装。

出现 Python 错误“ModuleNotFoundError: No module named ‘setuptools_rust’”的原因有多种:

  1. 没有setuptools-rust通过运行安装包
    pip install setuptools-rust
  2. 有一个过时的版本pip
  3. 在与您正在使用的版本不同的 Python 版本中安装包。
  4. 全局安装包,而不是在您的虚拟环境中。
  5. 您的 IDE 运行的 Python 版本不正确。
  6. 命名您的模块setuptools_rust,这将影响官方模块。
  7. 声明一个名为setuptools_rustwhich 的变量将隐藏导入的变量。

如果错误仍然存​​在,请获取您的 Python 版本并确保您使用正确的 Python 版本安装包。

python --version

获取 python 版本

例如,我的 Python 版本是3.10.4,所以我将
setuptools-rust使用pip3.10 install setuptools-rust.

pip3.10 install setuptools-rust # 👇️ if you get permissions error use pip3 (NOT pip3.X) sudo pip3 install setuptools-rust

请注意,版本号对应于pip我正在使用的版本。

pip如果您的计算机上未设置PATH ,请替换pip
python3 -m pip

# 👇️ make sure to use your version of Python, e.g. 3.10 python3 -m pip install setuptools-rust

如果“No module named ‘setuptools_rust’”错误仍然存​​在,请尝试重新启动您的 IDE 和开发服务器/脚本。

您可以通过运行命令检查是否setuptools-rust安装了软件包
pip show setuptools-rust

# 👇️ check if you have setuptools-rust installed pip3 show setuptools-rust # 👇️ if you don't have pip set up in PATH python3 -m pip show setuptools-rust

pip show setuptools-rust命令将声明该包未安装或显示有关该包的一堆信息,包括该包的安装位置。

如果未安装该包,请确保您的 IDE 使用的是正确版本的 Python。

如果您的机器上安装了多个 Python 版本,您可能setuptools-rust使用了不正确的版本安装了包,或者您的 IDE 可能设置为使用不同的版本。

例如,在 VSCode 中,您可以按CTRL + Shift + P或(在 Mac 上为+ Shift+ P
)打开命令面板。

然后在字段中键入“Python 选择解释器”。

python选择解释器

然后从下拉菜单中选择正确的 python 版本。

选择正确的python版本

您的 IDE 应该使用与您用于从终端安装包的相同版本的 Python(包括虚拟环境)。

如果您使用的是虚拟环境,请确保您是
setuptools-rust在虚拟环境中而不是全局安装。

如果您还没有虚拟环境,可以尝试创建一个。

# 👇️ use correct version of Python when creating VENV python3 -m venv venv # 👇️ activate on Unix or MacOS source venv/bin/activate # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ install setuptools-rust in virtual environment pip install setuptools-rust

如果该python3 -m venv venv命令不起作用,请尝试以下 2 个命令:

  • python -m venv venv
  • py -m venv venv

您的虚拟环境将使用用于创建它的 Python 版本。

如果错误仍然存​​在,请确保您没有在项目中命名模块,因为那样会影响原始模块。 setuptools_rust.py setuptools-rust

您也不应该声明一个名为setuptools_rustas 的变量,这也会影响原始模块。

如果错误未解决,请尝试卸载setuptools-rust软件包,然后再安装。

# 👇️ check if you have setuptools-rust installed pip3 show setuptools-rust # 👇️ if you don't have pip set up in PATH python3 -m pip show setuptools-rust # 👇️ uninstall setuptools-rust pip3 uninstall setuptools-rust # 👇️ if you don't have pip set up in PATH python3 -m pip uninstall setuptools-rust # 👇️ install setuptools-rust pip3 install setuptools-rust # 👇️ if you don't have pip set up in PATH python3 -m pip install setuptools-rust

尝试重新启动您的 IDE 和开发服务器/脚本。

您也可以尝试升级 setuptools-rust 包的版本。

pip3 install setuptools-rust --upgrade # 👇️ if you don't have pip set up in PATH python3 -m pip install setuptools-rust --upgrade
如果错误仍然存​​在,我建议观看有关如何在 Python 中使用虚拟环境的快速视频。

这个用于在以下位置使用虚拟环境 (VENV) Windows

这个用于在MacOS和上使用虚拟环境 (VENV) Linux

结论

Python “ModuleNotFoundError: No module named ‘setuptools_rust’” 发生在我们有一个过时的版本pip或忘记安装
setuptools_rust包时。要解决该错误,请升级pip并安装
setuptools_rust.