簡體   English   中英

無法導入名稱 <MyClass> 在Python中

[英]Cannot import name <MyClass> in Python

我嘗試在python中導入一個類,但是可能由於循環導入而遇到了一些麻煩,但是我不知道如何解決我的問題。

我的回溯中出現的循環(packageA包含三個文件:A,B和C):

**In main.py**    
from packageA import fileA
**In fileA.py:**
from packageA import fileB    <- 
**In fileB.py:**
from packageA import fileC
**In fileC.py:**
from fileB import ClassB      <-

我得到:

ImportError: cannot import name ClassB

起初,我認為我可以從fileC中刪除“ import ClassB” ,因為之前已經導入了整個fileB。 但是,如果我嘗試這樣做,則會收到另一個錯誤,它是:

NameError: global name 'ClassB' is not defined

有人可以幫忙嗎?

這是循環進口的情況。 fileB正在導入fileC,后者正在導入fileB。 后一個導入由一個空的,未初始化的模塊對象滿足。

通常,您不想使用循環導入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM