0

だから私は次のケースがあります:

複数の関数定義を持つモジュールがあります。これらの機能を利用できるクラスを作成したいと考えています。

どの方法が一番いいの?と聞きたかっただけです。オプション1

import ModuleWithFunctions

class bla(object):

    ModuleWithFunctions = ModuleWithFunctions

オプション2

class bla(object):

    import ModuleWithFunctions

オプション 2 が PEP 8 に反対していることはわかっているので、人々はオプション 1 と言うと思いますが、すべてを次のように利用できるようにしたい場合はどうでしょうか。

bla.(function) 

それ以外の:

bla.ModuleWithFunctions.(function)

option1でどうすればそれを行うことができますか?

4

1 に答える 1

5

通常、これを行うことはありません。

通常baseclass_module、代わりに基本クラスを作成します。

# baseclass_module.py

class BaseClass(object):
    def method1(self):
        # ...

    def method2(self):
        # ...

次に、それを他のモジュールで使用します。

from baseclass_module import BaseClass

class Bla(BaseClass):
    # ...
于 2013-03-28T10:13:10.887 に答える