我运行了命令pip install coverage,它似乎已经正确安装。
Frodo:Triangle567 tarikkdiry$ pip install coverage
Collecting coverage
Using cached https://files.pythonhosted.org/packages/c7/d0/337673c08f5b0cc7ada3dfe2a998ae8a97d482722045644be3d79bbcbe05/coverage-4.5.1-cp37-cp37m-macosx_10_13_x86_64.whl
Installing collected packages: coverage
Successfully installed coverage-4.5.1但是,在对我的一个测试文件运行coverage之后,我收到以下错误:
Frodo:Triangle567 tarikkdiry$ coverage run testtriangle.py
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.7/bin/coverage", line 7, in <module>
from coverage.cmdline import main
ModuleNotFoundError: No module named 'coverage.cmdline'; 'coverage' is not a package
Frodo:Triangle567 tarikkdiry$我已经尝试卸载每个python包并重新安装,但都没有成功。我已经在另一台机器上尝试过了,可以确认测试文件工作正常。
编辑:运行pip3 check coverage和pip3 show coverage之后
pip3检查覆盖范围:
No broken requirements found.pip3显示覆盖范围
Name: coverage
Version: 4.5.1
Summary: Code coverage measurement for Python
Home-page: https://bitbucket.org/ned/coveragepy
Author: Ned Batchelder and 100 others
Author-email: ned@nedbatchelder.com
License: Apache 2.0
Location: /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages
Requires:
Required-by:发布于 2018-10-01 01:22:45
您应该检查覆盖范围是指python还是python3。它最有可能使用python来运行你所需要的工具。macOS上的默认python版本是Python2.7。
另一种选择是通过运行python3.7 -m venv $directory (其中$directory包含虚拟环境的文件夹,您可以根据需要使用直接路径)创建一个虚拟环境,然后通过运行source $directory/bin/activate激活它。这样做之后,您就可以毫不费力地找到您想要的所有包。我个人更喜欢这种方法,而不是将包安装到系统中。
此外,您可以从MacPorts或Homebrew安装python3.7,并将其激活为默认的python。对于许多库,您也可以使用这些包管理器来安装它们。
发布于 2018-10-01 05:32:48
根据注释,您在当前工作目录中有一个名为coverage.py的文件。此文件会干扰coverage命令从coverage.cmdline导入的尝试。您需要将该文件重命名为其他名称。
发布于 2020-09-05 02:07:32
在使用mingw64 (bash for Windows) shell运行pip install coverage时,我在Windows上遇到了这个问题。Pip检测到linux环境,并且不包括Windows所需的.exe。
为了解决这个问题,我运行了pip uninstall coverage,然后打开一个管理PowerShell提示符并运行pip install coverage。
https://stackoverflow.com/questions/52579792
复制相似问题