繁体   English   中英

导入的Python 2/3改版问题

[英]Python 2/3 retofit issue with imports

我有一个用Python 2编写的程序包,并且我正在尝试进行改型以与Python 3一起使用。至少可以说这很痛苦。 我在使用代码的将来的 absolute_import部分时遇到问题。

这适用于Python 2,但不适用于Python 3,因此,我希望有人可以指出我的问题。

包结构为:

fusion
  -> __init__.py
  agol
    -> featureservice.py
    -> layer.py

融合初始化定义为:

from __future__ import absolute_import
from . import agol

agog子程序包定义为:

from __future__ import absolute_import
from . import featureservice
from . import layer

featureservice.py具有此导入,问题是:来自。 导入层layer.py具有类似的导入:from。 导入功能服务

他们可以互相参考,其中图层可以是要素服务的子级。 但是我遇到了导入问题,将这个模块导入每个py文件的正确方法是什么?

谢谢

循环相对导入在Python 3中不起作用。

循环导入被认为是不好的做法,因为您已将两个模块彼此紧密耦合。 您可能需要考虑为什么需要将featureservice导入到layer并将layer导入featureservice

也许每个功能中的某些功能都应该位于两者都依赖的另一个模块中? 或者,也许应该将它们合并在一起,而不是进一步拆分这些模块?

相关阅读:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM