Python クラス属性の遅延評価

WBOY
WBOYオリジナル
2016-12-05 13:27:161291ブラウズ

いわゆるクラス属性の遅延計算とは、クラスの属性をプロパティとして定義し、アクセスされたときのみ計算され、一度アクセスされると結果がキャッシュされ、毎回計算する必要がありません。

利点

遅延計算属性を構築する主な目的は、パフォーマンスを向上させることです

達成しました

リーリー

手順

遅延計算デコレータ クラス LazyProperty を定義します。 Circle はテストに使用されるクラスです。Circle クラスには、半径、面積、周長の 3 つの属性があります。面積と周長のプロパティは LazyProperty によって装飾されます。LazyProperty の魔法を試してみましょう:

リーリー

「計算領域」は area() の計算ごとに 1 回出力されますが、「計算領域」は c.area を 2 回呼び出した後で 1 回しか出力されません。これは LazyProperty によるもので、一度呼び出される限り、その後何回呼び出してもカウントされません。

以上がこの記事の全内容です。皆様の学習に役立つことを願っております。また、皆様も Script Home をサポートしていただければ幸いです。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。