2017-03-04 82 views
0

我有一個簡單的模塊(Python 2.7版),從中我試圖導入一個類,但我得到一個錯誤:的Python 2.7不能導入名稱<class>

ImportError: cannot import name Engine 

我的代碼是:

from components import Engine 

和組件:

class Engine(object): 
    pass 

在另一方面

from components import * 

工作正常

什麼的我做錯了嗎?任何提示讚賞

+0

很難不能夠重現問題說,但你可能有一個環導入,或者您可能輸入了錯誤的'components'文件。 –

+0

謝謝。我已經創建了一個簡單的結構,正如Juan所建議的那樣,它可以工作我想我必須有一個循環進口 - 很難發現,但我會去它 – Psionman

回答

0

如果你有這樣的結構:

. 
├── components 
│   ├── Engine.py 
│   └── __init__.py 
└── main.py 

而且例如main.py是:

from components import Engine 
print 'Hi' 

而且Engine.py是:

class Engine(object): 
    pass 

你一定找不到任何導入語句的問題。 代碼運行良好:

> python main.py 
Hi 
+0

找到循環進口,現在工作正常 – Psionman