在将其标记为重复之前,请阅读我的问题:
我正在尝试从子目录
中的文件导入一个类> main.py
> --->folder/
> ----->file.py
并在file.py
我有一个类imlpemented(Klasa
)
我尝试了什么:
放入main.py:
from folder import file
from file import Klasa
我收到错误:
来自文件导入Klasa
ImportError:没有名为'file'的模块
当我尝试使用时:
from folder import file
我收到此错误:
tmp = Klasa()
NameError:名称'Klasa'未定义
我在子文件夹中放了一个空的__init__.py
但它仍然不起作用,而且我已经放入了__init__.py
:from file import Klasa
但仍然无效。
如果main和file位于同一个文件夹中,则可以正常工作:
from file import Klasa
但我希望它们在单独的文件中。
有人能告诉我我做错了吗?
答案 0 :(得分:114)
您的问题基本上是您从未指定过该文件的正确路径。
请尝试从主脚本中填写:
from folder.file import Klasa
或者from folder import file
:
from folder import file
k = file.Klasa()
或者再次:
import folder.file as myModule
k = myModule.Klasa()