簡體   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