如何从迭代器中随机选取一个元素?
random.choice(generaotr)
会提示 TypeError: object of type 'generator' has no len()
PHPz2017-04-18 09:32:29
Signature: random.choice(seq)
、パラメーターはシーケンスである必要があり、まずジェネレーターをシーケンスに変換します。
ringa_lee2017-04-18 09:32:29
最初に特定の数の反復子の値をキャッシュし、次にそれらをランダムにフェッチできます。
リーリーまたは、整数を直接ランダム化し、その位置に next() を実行します。
黄舟2017-04-18 09:32:29
質問は次のように考える必要があります: イテレータが使用されているのに、なぜランダムに数値を選択する必要があるのでしょうか?イテレータが無限の場合はどうなるでしょうか?もちろん、リスト化して個別に議論することも可能です