iterators:データを通過するための一般的な抽象化のための一般的な抽象化
は、を網羅したオブジェクトを含む
方法を網羅するiterを網羅するより一般的な抽象化です。それ自体。これは、反復器がリスト、タプル、カスタムクラスなどのさまざまなデータ構造を表現し、それらを横断するための一貫した方法を提供できることを意味します。ジェネレーターは、1つ以上の収量式を含む関数を呼び出すことによって構築されます。これらの生成式は、関数の実行値と戻り値を一時的に一時停止します。結果のオブジェクトはイテレーターの特性を所有していますが、その実装は一意です。 __next __。排出式式はフレームのサスペンションと再開を処理し、状態を管理するのを楽にします。 範囲のiの場合(開始、停止): evely i * i#evelyを使用して一時停止して返す値カスタムイテレーターの実装:
クラスSquares(object): def __init __(self、start、stop): self.start = start self.stop =停止 def __iter __(self): 自己を返します def __next __(self): self.start> = self.stop: 停止を上げます current = self.start * self.start self.start = 1 現在のを返します。ジェネレーターアプローチではコードが必要ですが、カスタムイテレーターは追加の方法により柔軟性が高まります。。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3