私が書いている Python モジュールには、約 20 個の興味深い型とグローバル メソッドしかありませんが、多くの定数と例外があります (ロケール用の約 70 個の定数、エンコーディング用の約 60 個の定数、20 個の書式設定属性、200 個以上の例外など)。その結果help()
、このモジュールでは約 16,000 行のテキストが生成され、各例外のほぼ同一の説明が散らばっています。定数はそれほど厳しいものではありませんが、ナビゲートするのは依然として困難です。
そのようなモジュールを整理するためのpythonicな方法は何でしょうか? そのままにして、他のドキュメントに依存しますか? 定数を別々の辞書に移動しますか? サブモジュールに?必要に応じて、それらをクラスレベルの定数として追加しますか?
これは C 拡張であるため、実際のサブモジュールをここに簡単に追加できないことに注意してください。sys.modules
オブジェクトにモジュールがあるかどうかを実際にはチェックしないと聞いたので、そこに辞書を追加できます。このようにして、モジュールをインポートするときにmymodule.locales
、 、mymodule.encoding
、およびを作成mymodule.exceptions
して追加することができます。sys.modules
これは良いアイデアでしょうか、それともハックすぎますか?