【发布时间】:2020-06-21 18:10:30
【问题描述】:
我正在尝试将不同目录中的类导入另一个文件,但似乎无法使其正常工作。我知道这个问题被问了很多,我查看了多个 stackoverflow 解决方案和https://docs.python.org/3/tutorial/modules.html#packages
1:Importing files from different folder 2:import python file in another directory failed
我想尝试只使用仅包含 __init__.py 文件的方法,而不是使用 import sys
我的目录结构如下:
django_vue/
__init__.py
devices/
__init__.py
models.py
lib/
__init__.py
my_file.py
我正在尝试通过以下方式将 Device 类从 /django_vue/devices/models.py 导入到 /django_vue/lib/my_file.py:
from devices.models import Device
但是当我这样做时,我仍然收到错误:
from devices.models import Device
ModuleNotFoundError: No module named 'devices'
我不确定我做错了什么,因为我已经在两个目录中都有__init__ 文件。任何帮助表示赞赏。我也在运行 python 3.6。
【问题讨论】:
-
您是在运行文件、模块还是在运行 django 服务器?你能在这里发布整个错误吗?
-
另外,作为旁注,
__init__.py文件不再是强制性的,如果我没记错的话,来自python3.6。 -
我只是在运行一个文件。所以从终端我只是在导航到
django_vue/lib/后做python my_file.py -
好的。这就是问题所在。如果可以的话,让我尝试解决问题。
标签: python python-import