【发布时间】:2020-01-09 08:14:34
【问题描述】:
我将一些函数拆分为一个单独的文件。找到函数和辅助函数。设置所有路径并导入其他文件,以便在必要时仍然可以调用所有内容。但是在从原始文件中删除未使用的导入后,它似乎会出现循环导入错误。
所以有一个未使用的导入,并且在那里,每个测试 (524) 都成功,但由于未使用的导入,无法推送分支。如果我们删除导入,我认为测试会进入循环导入并且根本不会开始。
我尝试的第一件事是将有关导入语句从: from /module import /object --> import module
这使测试开始,但之后一切都出错了。
在那之后,我试图找到一种通过循环导入路径的方法,但我忘记了一切,甚至不知道这是否是一个解决方案。
`
Traceback (most recent call last):
File "/home/user/../.py", line 2, in <module>
from x.model import x
File "/home/user/../.py", line 1, in <module>
import A
File "/home/user/../.py", line 4, in <module>
import B
File "/home/user/../.py", line 1, in <module>
import C
File "/home/user/../.py", line 9, in <module>
import D
File "/home/user/../.py", line 4, in <module>
import E
File "/home/user/../.py", line 9, in <module>
from x.model import x
ImportError: cannot import name 'x'
`
【问题讨论】:
-
很难帮助您,因为您的问题中没有任何代码。
-
此外,如果您将其更改为
import module,您可能需要附加module.object,而不是直接使用object。您也可以通过尝试组织该模块并使用__init__文件来解决此问题,以便轻松导入其内容并且用户不会陷入循环导入 -
如果不需要对象,为什么还要导入模块?
标签: python-3.x django-rest-framework python-3.6