python - pycharm virualenv 从子目录导入类
问题描述
我正在用 Python 3.6 项目将一个用于 Android 的大型 Kivy 重新组织成类似于 MVC 结构的东西。所以我有时间并决定创建一个新的 PyCharm 项目 vertualenv 并从主文件开始。我在运行应用程序的主项目目录或目录中有一个main.py
和文件。我还创建了一个文件夹,并在该文件夹中为每个数据表创建了一个 .py 文件。当我将类导入到我的文件中时,我得到了错误。我的目录看起来像这样main.kv
venv
models
sqlite3
main.py
ModuleNotFound
~/PyCharmProjects/MyProjectName/venv/main.py #main environment
/main.kv
/models/__init__.py #subdirectory
/cattle.py
从main.py
我尝试使用以下内容导入的文件中:
from models.cattle import Cattle
from .models.cattle import Cattle
这没有用。我还在目录中添加了一个__init__.py
文件models
,没有区别。
如何获取主文件以从子目录中导入我的自定义 Cattle 类?
所以我解决了。我不知道为什么一切都在 venv 目录中。但我只是将主文件和模型目录移到 venv 文件夹之外,现在它导入了。
解决方案
推荐阅读
- cluster-computing - Mapbox GL JS - 移除 mbtile 上的集群效应
- mysql - MySQL ORDER BY CASE 优化
- r - 在包含单个双引号的列上使用 data.table::fread
- c++ - 调用 `curl_easy_send` 和 `curl_easy_recv` 时应用了哪些 `libcurl` 选项?
- excel - 如何将Bloomberg函数BDP“植入”到单元格VBA中
- apache-spark - Spark 2.x - parquet 文件的 gzip 与 snappy 压缩
- java - 使用 Java api 查找索引是否存在的弹性搜索
- javascript - Jquery UI Draggable溢出问题
- java - 每个连接的 Java asyncHttpClient 新线程
- java - Java 流无干扰和副作用