![](/img/trans.png)
[英]Declare class methods in __init__.py and put implementations in another file
[英]Class implementations in __init__.py
我一直在研究__init__.py
文件,看看建議是處理那里的包的導入,和/或一些初始化。
然后是像Python Collections這樣的包。 __init__.py
包含不同Collection對象的實現。
為什么要在__init__.py
放置實現而不是包中的專用.py
文件? 這是一個好主意嗎? 這是一種設計模式嗎?
在這種特殊情況下,根本不需要具有__init__.py
文件的目錄,因為該模塊中唯一的其他文件是abc.py
,它本身不定義任何內容。 因此,如果不是abc.py
,整個事情應該只是collections.py
而不是collections/__init__.py
。 那為什么它是什么呢? 純粹是出於向后兼容的原因。 他們不想from collections.abc import ...
中斷,但是想在內部移動東西。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.