python - 为什么python在导入包的时候找不到子包?
问题描述
我有一个这样组织的项目:
proj
├── main.py
├── netbatch
│ ├── __pycache__
│ ├── monster.py
│ └── test_monster.py
└── workers
├── __pycache__
├── ldb
│ ├── __pycache__
│ └── handle.py
└── strawberry.py
strawberry.py
包含
import ldb.handle
...
if __name__ == '__main__':
并main.py
包含
import workers.strawberry
import workers.ldb.handle
当我运行strawberry.py
导入时按预期工作,但是当我运行时main.py
,我看到了错误:
File "/tmp/proj/workers/strawberry.py", line 3, in <module>
import ldb.handle
ModuleNotFoundError: No module named 'ldb'
我正在使用版本 3.6.3
解决方案
推荐阅读
- c# - UWP XAML:使用 FontIcon 和 HamburgerMenuItem 的自定义字体不呈现字形
- mdx - MDX 过滤器和日期范围问题
- r - 从 optim 调用 Rcpp 函数
- rest - TensorFlow Serving REST API 的正确负载
- spring-boot - Spring Boot 应用程序的 Bean 验证失败
- python - 如何将字符向量与方阵连接起来
- tensorflow - 张量流。针对特定任务的多对象检测
- php - Sphinx(searchd)无法找到新索引的文档
- python - 当两个用户同时输入时,SQL 会覆盖数据(Python)
- r - 从R中列表列中的所有列表中删除特定数字