[英]ImportError: No module named pandas when using pytest
我有一个具有以下结构的项目:
.
├── Pipfile
├── Pipfile.lock
├── rules
│ ├── __init__.py
│ ├── budget.py
│ └── tests
│ ├── __init__.py
│ └── budget_test.py
显然, budget_test.py
正在测试budget.py
模块。
from .. import budget
class TestBudget:
...
和budget.py
开始:
import pandas as pd
当我手动启动模块时,导入运行良好。 当我启动 pytest 时,我收到关于 Pandas 的 ImportError:
导入错误:没有名为 Pandas 的模块
尽管 virtualenv 已激活并且 pandas 是已安装软件包的一部分:
pip freeze
...熊猫==1.0.1 ...
pytest 找不到安装在虚拟环境中的软件包有什么原因吗?
令人惊讶的是,当python -m pytest
成功时,运行pytest
失败
通常的做法是使用python -m pytest
能够找到当前环境中的所有模块。 更具体一点 - 这需要在包中找到模块。
您可以在相关的PEP-338 中阅读有关 -m 开关原理和行为的更多信息。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.