首頁 > 後端開發 > Python教學 > 通配符導入:使用還是不使用?

通配符導入:使用還是不使用?

Linda Hamilton
發布: 2024-11-21 08:10:11
原創
856 人瀏覽過

Wildcard Imports: To Use or Not to Use?

通配符導入:最佳實踐指南

通配符導入,例如 from PyQt4 import *,是程式設計社群中常見的爭論來源。然而,許多開發人員同意通常應該避免使用它們。

避免通配符導入的案例

限定名稱優於裸名稱。最好使用 from PyQt4.QtCore import Qt 之類的語法明確指定從中導入的模組,而不是 from PyQt4 import Qt。限定名稱可以更輕鬆地追蹤程式碼依賴性和偵錯錯誤。

它們還可以降低模組之間發生衝突的風險。如果兩個模組定義了同名的函數,則需要明確導入其中一個以避免歧義。通配符導入使人們更容易忽略此類衝突,從而導致意外錯誤。

最後,通配符導入會使測試程式碼變得更加困難。例如,如果您要模擬來自第三方庫的類,如果您有對該類的合格引用,那麼這樣做會更容易。

通配符導入的替代方案

如果您如果想要減少導入語句中的行數,您可以為模組建立別名。例如,您可以編寫:

import PyQt4
Qt = PyQt4.QtCore
登入後複製

這種方法允許您使用 Qt.QPointF、Qt.QRectF 等,而不必明確地編寫限定每個名稱。

另一個選項是使用選擇性導入。您可以只導入您需要的類,而不是從模組導入所有類:

from PyQt4.QtCore import QPointF, QRectF
from PyQt4.QtGui import QGraphicsItem, QGraphicsScene
登入後複製

這比使用通配符導入更冗長,但它的優點是僅導入您實際使用的類.

結論

雖然通配符導入可能很誘人,但通常不建議使用。限定名稱更具可讀性、不易出錯且更易於測試。如果您正在尋找減少匯入語句中行數的方法,請考慮使用別名或選擇性匯入。

以上是通配符導入:使用還是不使用?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板