ジェネレーター内包表記について
ジェネレーター内包表記は、完全なリストを作成するのではなく、オンデマンドで項目を生成する点を除けば、リスト内包表記と似ています。これは、大規模なデータセットを操作する場合、またはメモリが制約である場合に有益です。
ジェネレーター内包表記の仕組み
ジェネレーター内包表記は、リスト内包表記と同じ構文を使用します。ただし、角括弧 [] の代わりに括弧 () が使用されます。ジェネレーターの内包表記は、反復可能オブジェクト内の各要素の式を評価し、一度に 1 つの項目を生成します。
my_list = [1, 3, 5, 9, 2, 6] filtered_gen = (item for item in my_list if item > 3)
このコードは、filtered_gen というジェネレーター オブジェクトを作成します。ジェネレーター オブジェクトは、条件を満たす項目を 1 つずつ生成します。
リスト内包表記との違い
リスト内包表記とは異なり、ジェネレーター内包表記は次のとおりです。
使用例
ジェネレーターの内包表記は、必要なシナリオで使用できます。
注: 複数の値を一度に保存またはアクセスする必要がある場合は、ジェネレーター内包表記ではなくリスト内包表記を使用することをお勧めします。
以上がジェネレーター内包表記はリスト内包表記とどのように異なり、いつ使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。