首頁 > 後端開發 > Python教學 > Python 3.3 是否消除了套件中對 __init__.py 的需要?

Python 3.3 是否消除了套件中對 __init__.py 的需要?

Mary-Kate Olsen
發布: 2024-11-29 06:54:09
原創
449 人瀏覽過

Does Python 3.3  Eliminate the Need for __init__.py in Packages?

Python 3.3 中的套件不需要 __init__.py 嗎?

Python 3.3 及更高版本引入了 命名空間套件。此功能可讓您建立沒有 __init__.py 檔案的套件。

命名空間包與常規包

  • 命名空間包:沒有__init__.py 文件,允許多個模組跨不同的模組為同一個套件做出貢獻
  • 常規套件:有一個__init__.py 文件,使它們獨立並將其模組隔離到單一目錄層次結構。
何時使用命名空間包

主要用例命名空間包是指您有多個庫駐留在不同位置,並希望它們向父包貢獻一個子包。

例如:

google_pubsub/ google_storage/ google_storage/

在此範例中,google_pubsub 和google_storage 共用相同的google/cloud 命名空間。這允許您從任一庫匯入模組,而無需提供完整路徑。

常規套件

對於大多數用例,使用 __init__.py 檔案建立常規套件仍然是建議的方法。這提供了自我包含並防止潛在的命名空間衝突。

以上是Python 3.3 是否消除了套件中對 __init__.py 的需要?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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