0

Python 2 ソフトウェアの一部をリファクタリングしています。コードは現在、45 程度のクラス (およびアプリケーションをブートストラップするためのクラス外の 2 行) を含む単一のファイルにあります。

理想的には、関連するクラスのファイルをディレクトリにグループ化して、ファイルごとに 1 つのクラスを作成したいと考えています。

私は通常、Python インポートを次のように記述します。

from zoo.dog_classes.beagle_class import BeagleClass
from zoo.dog_classes.dalmatian_class import DalmatianClass

どのモジュールがクラスにインポートされているかが明確になり、それらの名前ができるだけ短くなるようにします。

ただし、このソフトウェアの場合、ロジックは非常に複雑です。クラスは通常、クラス メソッドで相互に参照するため、多数の循環インポートが発生するため、このアプローチは除外されます。

モジュールを関数にインポートしたくありません。これは可読性が悪く、コードがどこでも繰り返されるためです。

私の唯一の選択肢は、そのような方法でインポートを書くことです:

import zoo.dog_classes.beagle_class

その後、クラスが必要になったとき:

b = zoo.dog_classes.beagle_class.BeagleClass()

ただし、これは非常に冗長で、書くのが面倒です。

輸入品はどのように処理すればよいですか?

4

1 に答える 1

1
import zoo.dog_classes.beagle_class as beagle

b = beagle.BeagleClass()
于 2013-09-26T07:28:25.803 に答える