0

この方法で実装されたインターフェイスのような関数があります。

# File: parsers.py
class BaseParser(object):
    '''Interface class'''
    def __init__(self):
        self.content

    def Parse(self):
        """The interface, not implemented"""

        raise NotImplementedError('{}.Parse()'.format(inspect.stack()[0][3]))

class SimpleParser(BaseParser):
    '''Implementation class'''
    def __init__(self):
        BaseParser.__init__(self)

    def Parse(self):
        # Do real work

このモジュールをインポートすると、すぐに NotImplementedError が発生するため、SimpleParser を使用できません。この例外イディオムを使用して、引き続き使用できるようにするにはどうすればよいですか?

ありがとう!

4

1 に答える 1

6

あなたのインデントは間抜けで、スペースとタブが混在しています。確認するために使用python -ttします。

于 2012-08-19T20:22:11.820 に答える