我运行了命令 pip installcoverage,它似乎已正确安装。
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
但是,在对我的一个测试文件运行覆盖后,我收到此错误:
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 检查覆盖范围并 pip3 显示覆盖范围后
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:
最佳答案
您应该检查覆盖率是否引用 python 或 python3。它很可能使用 python
来运行您需要的确切工具。 macOS 上的默认 python 版本是 python 2.7。
另一种选择是通过运行python3.7 -m venv $directory
来创建虚拟环境(其中$directory
包含虚拟环境的文件夹,您可以直接使用路径(如您所愿),然后通过运行 source $directory/bin/activate
来激活它。完成此操作后,您将毫无问题地找到所需的所有包。与将软件包安装到系统中相比,我个人更喜欢这种方法。
此外,您可以从 MacPorts
或 Homebrew
安装 python3.7 并将其激活为默认 python。对于许多库,您也可以使用这些包管理器来安装它们。
关于python - 安装后找不到覆盖python库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52579792/