如何从同一目录导入PYTHON类文件?

How to import python class file from same directory?(如何从同一目录导入PYTHON类文件?)

本文介绍了如何从同一目录导入PYTHON类文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的Python3.3项目中有一个名为/Models的目录。

从我的main.py我只做了一个

from models import *

在我的__init__.py中:

__all__ = ["Engine","EngineModule","Finding","Mapping","Rule","RuleSet"]
from models.engine import Engine,EngineModule
from models.finding import Finding
from models.mapping import Mapping
from models.rule import Rule
from models.ruleset import RuleSet

这在我的应用程序中工作得很好。

我有一个依赖于其他模型的模型,因此在我的engine.py中,我需要在engine.py中导入finding.py。当我这样做时:from finding import Finding

我收到错误No Such Module exists

如何从同一模块/目录中的文件A导入类B?

推荐答案

因为您使用的是不允许这些相对导入的Python3(这可能会导致不同包中同名模块之间的混淆)。

使用以下任一选项:

from models import finding

import models.finding

或者,可能是最好的:

from . import finding  # The . means "from the same directory as this module"

这篇关于如何从同一目录导入PYTHON类文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:如何从同一目录导入PYTHON类文件?

基础教程推荐