NotImplementedErrorを使用してPythonプログラミング方法

PythonのプログラミングNotImplementedErrorを使用するすべての人のための共有に小さな続いて、我々は手助けをしたい、良い基準値を持っています。是非、ご覧ください、一緒に小さなシリーズに従うことを
Pythonプログラミングが昇給レポートに誤差関数を達成することができ、およびエラー条件自体が行くプログラマーによってカスタマイズすることができます。オブジェクト指向プログラミングでは、この方法は、そのサブクラスを達成するため、予約最初のインタフェースが実装されていないかもしれません。

それは、サブクラスが達成されなければならない必要がある場合は、ときに問題につながる実装なので、方法が良いの使用を上げません。

問題今回は分類NotImplementedErrorを発生させます。
次のようにコードの一部を書きます:

class ClassDemo:
    def test_demo(self):
           raiseNotImplementedError("my test: not implemented!")
  
classChildClass(ClassDemo):
    pass
  
inst =ChildClass()
inst.test_demo()

プログラムの結果:

E:\01_workspace\02_programme_language\03_python\OOP\2017\08\10>pythonerror_demo.py
Traceback (mostrecent call last):
 File "error_demo.py", line 9, in<module>
  inst.test_demo()
 File "error_demo.py", line 3, intest_demo
  raise NotImplementedError("my test:not implemented!")
NotImplementedError:my test: not implemented!

以上の動作の結果からわかるように、プログラムは、このメソッドが呼び出さサブクラスで実装されていなかった特定します。

適切な方法を説明する呼び出すときにコードの行の数、所与の観点から、これだけサブクラスのオブジェクトをインスタンス化します。

簡単に修正テストコードによって推定することができ、このような結論が確認され、ここで確認しなくなりました。

また、コードを変更します。

class ClassDemo:
    def test_demo(self):
           raiseNotImplementedError("my test: not implemented!")
  
classChildClass(ClassDemo):
    def test_demo(self):
       print("OKOKOOK!")
  
inst =ChildClass()
inst.test_demo()

新しいコードでは、サブクラスの実装は、設計法をtest_demo。

次のようにプログラムの動作結果があります

E:\01_workspace\02_programme_language\03_python\OOP\2017\08\10>pythonerror_demo.py
OKOKOOK!

プログラムの実行限り、実装の対応するインターフェイスメソッドの結果から明らかなように、実施形態の実装におけるエラーが報告されていないません。

913066266、高齢者が学んでいる方法を見て:私たちは、Pythonのバックルqunを学ぶお勧めします!基本的なWeb開発Pythonスクリプトからなど、爬虫類、ジャンゴ、データマイニング、へ[PDF、実際のソースコード]、ゼロベースのプロジェクトの戦闘データに仕上げています。どんな小さなPythonのパートナーに与えられました!毎日、ダニエルは上をクリックしご参加、タイミングPythonの技術を説明し、いくつかの学習方法と細部への注意を払う必要性を共有する学習者がのための場所を集めるのPython
みんなの全体の内容を共有するために、この小さなシリーズでは、PythonプログラミングNotImplementedError上記されて使用します

发布了35 篇原创文章 · 获赞 37 · 访问量 3万+

おすすめ

転載: blog.csdn.net/haoxun03/article/details/104255329