2012-10-03 123 views

回答

1

在單元測試中,至少對於外部接口來說,更喜歡絕對導入。測試看起來應該儘可能像客戶端代碼一樣,當事情四處移動時,當__init__.py未正確地從模塊重新導出等時,測試應該會中斷。

0

從測試中,我總是使用from .. import foo,因爲它是最簡單的,因此我的測試總是保留在tests/子包中,因此使得包最容易重構,並且不會中斷。

PEP8上半年討論的相對進口是隱式相對進口:例如,從foo.pyimport test.test_foo。這些都是不好,還有從來沒有使用它們的一個理由。

否則,唯一的選擇是from project import foo

相關問題