ModuleNotFoundError:Python 中没有名为“pytest”的模块

ModuleNotFoundError:Python 中没有名为“pytest”的模块

ModuleNotFoundError: No module named ‘pytest’ in Python

Python “ModuleNotFoundError: No module named ‘pytest’” 出现在我们忘记pytest在导入前安装模块或将其安装在不正确的环境中时。

要解决此错误,请通过运行命令安装模块pip install pytest

没有名为 pytest 的模块

在项目的根目录中打开终端并安装pytest
包。

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

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

常见错误原因

出现错误的原因有多种:

  1. 没有pytest通过运行安装包pip install pytest
  2. 在与您正在使用的版本不同的 Python 版本中安装包。
  3. 全局安装包,而不是在您的虚拟环境中。
  4. 您的 IDE 运行的 Python 版本不正确。

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

python --version

获取 python 版本

例如,我的 Python 版本是3.10.4,所以我会安装 pytest 包pip3.10 install pytest

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

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

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

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

如果错误仍然存​​在,请尝试重新启动您的 IDE 和开发服务器/脚本。

检查包是否安装

您可以

通过运行命令
检查是否pytest安装了软件包pip show pytest

# 👇️ check if you have pytest installed pip show pytest # 👇️ if you don't have pip set up in PATH python -m pip show pytest

确保你的 IDE 使用正确的 Python 版本

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

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

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

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

python选择解释器

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

选择正确的python版本

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

在虚拟环境中安装包

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

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

# 👇️ 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 pytest in virtual environment pip install pytest

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

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

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

尝试重新安装包

如果错误未解决,请尝试卸载该pytest软件包,然后
重新安装

# 👇️ check if you have pytest installed pip show pytest # 👇️ if you don't have pip set up in PATH python -m pip show pytest # 👇️ uninstall pytest pip uninstall pytest # 👇️ if you don't have pip set up in PATH python -m pip uninstall pytest # 👇️ install pytest pip install pytest # 👇️ if you don't have pip set up in PATH python -m pip install pytest

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

也可以尝试升级pytest包的版本。

pip install pytest --upgrade # 👇️ if you don't have pip set up in PATH python -m pip install pytest --upgrade

无法从源 Pylance 解析导入“pytest”

pytest当模块未安装或您在 IDE(例如 Visual Studio Code)中选择了不正确的 Python 解释器时,会出现错误“无法从源 Pylance 导入“pytest”” 。

要解决该错误,请pytest在您的 IDE 中安装并选择正确的 Python 解释器。

无法从源代码解析导入 pytest

Import "pytest" could not be resolved from source Pylance(reportMissingModuleSource) [Ln 1, Col 8]

确保在您的 IDE 中选择了正确的 Python 解释器

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

例如,在 Visual Studio Code 中,您可以:

  1. CTRL + Shift + P或(在 macOS 上为+ Shift+ P)打开命令面板。

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

python选择解释器

  1. 从下拉菜单中选择正确的 python 版本。

选择正确的python版本

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

如果错误仍然存​​在,请尝试重新启动您的 IDE 和开发服务器/脚本。VSCode 经常出现故障,重启即可解决问题。

如果错误未解决,请尝试使用 Visual Studio Code 终端安装pytest模块。

您可以按键盘上的 CTRL + ` (反引号)打开 Visual Studio 代码终端。

您还可以在 Visual Studio Code 中打开终端,方法是按下然后键入“View: Toggle Terminal”。 CTRL+Shift+P

打开vscode终端

打开终端后,Visual Studio Code 将自动激活您的虚拟环境(如果有的话)。

运行pip install pytest命令。

pip install pytest

如果错误仍然存​​在,请尝试通过指定路径来选择 Python 解释器:

  1. CTRL + Shift + P或(在 Mac 上为+ Shift+ P)打开命令面板。
  2. 在字段中键入“Python 选择解释器” 。

python选择解释器

  1. 选择“输入解释器路径…”

选择进入解释器路径

  1. 单击“查找”

点击查找

  1. 在打开的窗口中,导航到您的 Python 可执行文件:
  • 如果您在 Windows 上有虚拟环境,请单击您的venv文件夹,然后双击该Scripts文件夹,选择python.exe文件,然后选择解释器

windows指定解释器的路径

  • 如果您在 macOS 或 Linux 上有虚拟环境,请单击您的venv
    文件夹,然后双击该
    bin文件夹,选择python文件,然后选择解释器

macos linux 指定解释器的路径

  • 如果您没有虚拟环境,请使用以下命令之一获取您的python.exepython可执行文件的路径,指定文件路径并选择可执行文件。
命令
where python python -c "import sys; print(sys.executable)"

找到蟒蛇路径

如果错误仍然存​​在,请尝试重新启动您的 IDE 和开发服务器/脚本。

或者,使用注释来禁用警告

如果这些建议都没有帮助,您可以使用注释来禁用 IDE 中的 Pylance 警告。

主程序
import pytest # type: ignore print(pytest)

您只需将# type: ignore命令添加到与导入语句相同的行中,即可禁用对特定导入的检查。

如果错误仍然存​​在,请按照有关如何安装pytest.

目录

  1. 在 Windows 上安装 pytest
  2. 在 macOS 或 Linux 上安装 pytest
  3. 在 Visual Studio Code 中安装 pytest
  4. 在 PyCharm 中安装 pytest
  5. 在 Anaconda 中安装 pytest
  6. 在 Jupyter Notebook 中安装 pytest

在 Windows 上安装 pytest

pytest在 Windows 上安装模块:

  1. 在搜索栏中键入 CMD,然后打开命令提示符应用程序。
  2. 键入pip install pytest并按 Enter。
命令
pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for Python 3 python3 -m pip install pytest # 👇️ using py alias py -m pip install pytest # 👇️ if you get permissions error pip install pytest --user # 👇️ for Anaconda conda install -c anaconda pytest

pip 安装 pytest 窗口

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

如果安装命令不成功,请尝试以管理员身份运行 CMD。

右键单击搜索结果,单击“以管理员身份运行”并运行 pip install 命令。

以管理员身份运行cmd

如果你收到错误
‘pip’ is not recognized as an internal or external commandpython -m安装时使用命令pytest

python -m pip install pytest python3 -m pip install pytest py -m pip install pytest

pytest或者,您可以在虚拟环境中安装该模块:

  1. 打开项目的根目录。
  2. 在资源管理器中按下Shift并右键单击。

windows 在此处打开 powershell 窗口

  1. 单击“在此处打开 PowerShell 窗口”。
  2. 运行以下命令。
电源外壳
# 👇️ might also be: "python3 -m venv venv" python -m venv venv # 👇️ activate on Windows (PowerShell) venv\Scripts\Activate.ps1 # 👇️ activate on Windows (cmd.exe) venv\Scripts\activate.bat # 👇️ install pytest in virtual environment pip install pytest

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

  • python3 -m venv venv
  • py -m venv venv.

如果您看到无法加载 ps1 的错误消息
,因为在此系统上禁用了运行脚本
,请运行以下命令,在出现提示时键入“yes”并重新运行激活命令。

电源外壳
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
您可以pytest使用命令验证模块是否已安装。 pip show pytest
电源外壳
pip show pytest pip3 show pytest python -m pip show pytest python3 -m pip show pytest

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

在 macOS 或 Linux 上安装 pytest

在 macOS 或 Linux 上安装 pytest:

  1. 搜索“终端”并启动应用程序。
  2. 键入pip install pytest并按 Enter。

搜索终端

终端
pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you get permissions error sudo pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for python 3 python3 -m pip install pytest # 👇️ alternative if you get permissions error pip install pytest --user # 👇️ for Anaconda conda install -c anaconda pytest

macOS linux 安装pytest

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

如果您收到未发现的错误pip,请使用该python -m命令。

终端
python -m pip install pytest python3 -m pip install pytest

如果出现权限错误,请在命令前加上sudo.

终端
sudo pip install pytest sudo pip3 install pytest

或者,您可以pytest在虚拟环境中安装该软件包:

  1. 在项目的根目录中打开终端。
  2. 运行以下命令。
# 👇️ could also be "python -m venv venv" python3 -m venv venv # 👇️ activate virtual env on macOS or Linux source venv/bin/activate # 👇️ install pytest in virtual environment pip install pytest

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

如果该python3 -m venv venv命令不起作用,请改用。 python -m venv venv

您可以使用该pip show命令来验证
pytest是否已
成功安装。

pip show pytest pip3 show pytest python -m pip show pytest python3 -m pip show pytest

pip show pytest命令将声明该包未安装或显示有关该包的一堆信息。

在 Visual Studio Code 中安装 pytest

在 Visual Studio Code 中安装 pytest:

  1. 按键盘上的 CTRL + ` (反引号)打开终端。
  2. 运行pip install pytest命令以安装pytest模块。
终端
pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you get permissions error sudo pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for python 3 python3 -m pip install pytest # 👇️ using py alias py -m pip install pytest # 👇️ alternative if you get permissions error pip install pytest --user

vscode pip 安装pytest

您还可以在 Visual Studio Code 中打开终端,方法是按下然后键入“View: Toggle Terminal”。 CTRL+Shift+P

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

在 Visual Studio 代码中安装 Python 模块时,请确保
您的 IDE 配置为使用正确的 Python 版本

CTRL+Shift+P或(在 Mac 上为+ Shift+ P)打开命令面板。

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

python选择解释器

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

选择正确的python版本

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

python --version如果您需要获取您的 Python 版本,可以使用该命令。

终端
python --version python3 --version

获取 python 版本

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

终端
# 👇️ could also be "python -m venv venv" or "py -m venv 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 pytest in virtual environment pip install pytest

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

在 PyCharm 中安装 pytest

在 PyCharm 中安装 pytest:

  1. Alt+F12键盘打开终端。
  2. 运行pip install pytest命令以安装pytest模块。
终端
pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you get permissions error sudo pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for python 3 python3 -m pip install pytest # 👇️ using py alias py -m pip install pytest # 👇️ alternative if you get permissions error pip install pytest --user

pycharm pip 安装pytest

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

或者,您可以使用 IDE 本身来安装模块。

  1. 单击“文件”>“设置”>“项目”>“Python 解释器”。
  2. 单击+图标并键入pytest
  3. 单击“安装包”。

pycharm解释器安装pytest

在 PyCharm 中安装 Python 模块时,请确保您的 IDE 配置为使用正确版本的 Python。

单击“文件”>“设置”>“项目”>“Python 解释器”。

pycharm 选择正确的解释器

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

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

python --version如果您需要获取您的 Python 版本,可以使用该命令。

终端
python --version python3 --version

获取 python 版本

在 Anaconda 中安装 pytest

在 Anaconda 中安装 pytest:

  1. 打开您的 Anaconda 导航器。
  2. 单击“环境”并选择您的项目。
  3. pytest在右侧的搜索栏中输入。
  4. 勾选pytest包并单击“应用”。

anaconda navigator 安装包

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

或者,您可以pytest使用命令安装包。

如果您使用的是 Windows,请搜索“Anaconda Prompt”并打开该应用程序。

如果您使用的是 macOS 或 Linux,请打开您的终端。

运行以下命令来安装pytest包。

# 👇️ using conda conda install -c anaconda pytest # 👇️ Alternatively use `pip` pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you get permissions error sudo pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for python 3 python3 -m pip install pytest # 👇️ using py alias py -m pip install pytest # 👇️ alternative if you get permissions error pip install pytest --user


如果您需要使用 Anaconda 安装特定版本的软件包,
请单击
以下文章。

在 Jupyter Notebook 中安装 pytest

在 Jupyter Notebook 中安装 pytest:

  1. 打开您的终端并输入“jupyter notebook”。

打开 jupyter 笔记本

  1. 单击浏览器选项卡中的“新建”,然后单击“终端”。

jupyter notebook 点击新建终端

  1. 键入pip install pytest并按 Enter。
# 👇️ using pip pip install pytest # 👇️ for Python 3 pip3 install pytest # 👇️ if you get permissions error sudo pip3 install pytest # 👇️ if you don't have pip in your PATH environment variable python -m pip install pytest # 👇️ for python 3 python3 -m pip install pytest # 👇️ using py alias py -m pip install pytest # 👇️ using conda conda install -c anaconda pytest # 👇️ alternative if you get permissions error pip install pytest --user

安装pytest模块后,您应该能够将测试文件作为pytest your_module.py.

例如,这是一个test_sample.py您可以使用
pytest test_sample.py.

测试样本.py
def increment(x): return x + 1 def get_answer(): assert increment(5) == 7 get_answer()

或者,您可以使用 Python ipykernel。

  1. 打开您的终端并输入“jupyter notebook”。

打开 jupyter 笔记本

  1. 单击“新建”,然后单击“Python 3 (ipykernel)”。
    jupyter notebook 点击新的 ipykernel

  2. 键入!pip install pytest并单击“运行”。

jupyter notebook 安装模块

请注意,pip install如果您使用此方法,该命令必须以感叹号为前缀。

!pip install pytest

键入命令后,单击“运行”以安装模块pytest

如果出现权限错误,例如“ [WinError: 5] Access is denied”,请将
--user选项添加到安装命令中。

!pip install pytest --user

使用用户选项安装 jupyter notebook

如果错误仍然存​​在,请尝试
重新启动 Jupyter 内核
并重新运行该命令。