イテレータから 、 などset
を作成したい。list
残念ながら、それらのコンストラクターにはイテレーターではなくイテラブルが必要です。すぐに破棄されるイテラブルを作成したくありません。
もちろん、単純にリストまたは集合内包表記を使用することもできます。これにより、私がやりたいこと (およびそれ以上) を正確に行うことができます。ただし、それらの構文は独特です。だから私が関数を書こうとしたとき:
def create_from_gen(container_type, generator):
return container_type(generator)
私は立ち往生しました。ユーザー定義のコンテナーの場合、もちろん独自のコンストラクターを定義できます。ライブラリと組み込み型の場合、選択の余地がありません。list
andをチェックしてset
、私が推測する特別な構文を使用できますが、それは見苦しいです。