[英]Python: import each other
我知道有關此問題的一些問題: Python文件-彼此導入
但是此解決方案對我不起作用。
這是目錄結構:
├── tester.py
└── utility
├── __init__.py
├── analysis.py
└── util.py
__init__.py
from .analysis import *
from .util import *
analysis.py
import util
def funcA():
print("a")
util.py
import analysis
def funcB():
print("b")
但這發生了
ImportError: No module named 'util'
我想以定義的方式來__init__.py
。
有什么辦法可以解決這個問題?
這是循環進口的經典案例。 analysis
是從util
導入的,而util
是從分析導入的。 盡管您可以解決問題,但可以通過在函數/方法內部導入以使其在運行時發生的方式,建議您改進代碼的設計。
通常,循環導入錯誤表明您的代碼設計存在問題。 在你的情況,無論是在代碼analysis
文件, util
文件屬於一起在一個單一的文件,或者你需要這兩個文件的共同內容存儲在單獨的common
文件,並導入由common
,而不是從進口在這兩個文件,彼此。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.