如何使用 Python Namespaced Packages 開發程式?
在 Python 中,名稱空間包允許你將 Python 程式碼分散在多個專案中。當你希望以獨立下載的方式釋出相關庫時,它很有用。例如,當 PYTHONPATH 中有 Package-1 和 Package-2 目錄時,
Package-1/namespace/__init__.py Package-1/namespace/module1/__init__.py Package-2/namespace/__init__.py Package-2/namespace/module2/__init__.py the end-user can import namespace.module1 and import namespace.module2.
在 Python 3.3 中,你無需做任何事,只要不要在你的名稱空間包目錄中放置任何 __init__.py 即可,它就可以正常執行。這是因為 Python 3.3 引入了隱式名稱空間包。
On older versions, there's a standard module, called pkgutil, with which you can 'append' modules to a given namespace. You should put those two lines in both Package-1/namespace/__init__.py and Package-2/namespace/__init__.py: from pkgutil import extend_path __path__ = extend_path(__path__, __name__)
這會將 sys.path 中以包命名的目錄的所有子目錄新增到該包的 __path__ 中。在此之後,你可以獨立地分發 2 個包,並利用 Python 名稱空間包。
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C #
MongoDB
MySQL
Javascript
PHP