問題タブ [generator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
243 参照

python - Paste.Template に代わるものはありますか?

テンプレートの貼り付けに関するすべての小さな問題にうんざりしています。テンプレートを維持するのは恐ろしいことです。古いプロジェクトを更新する方法がなく、テストするのが非常に困難です。

クイックスタートジェネレーターが有用であることが証明されているため、誰かがクイックスタートジェネレーターの代替手段を知っているかどうか疑問に思っています。

0 投票する
4 に答える
1690 参照

python - Python再帰ジェネレーターの範囲

ねえ、私は再帰ジェネレーターを使って数値の固定整数パーティションを作成していましたが、スコープの問題で混乱していました。

コードはこのスニペットに似ています。

私の混乱を以下に示します。

配列のコピーを使用するだけで正しい答えを得ることができます(たとえばa[:]、再帰呼び出しに渡す)が、それでも上記の動作を理解していません。printステートメントとyield値が異なるのはなぜですか?

0 投票する
1 に答える
731 参照

ruby-on-rails - カスタム ジェネレーターでネストされたルートを生成する

フロントエンドと管理コントローラーを生成し、ルートをルートファイルに追加するジェネレーターをレールで構築しています。これでフロントエンドを動作させることができます:

しかし、ネストされた管理ルート (admin/controller_file_name) に対して同じことを行う方法がわかりません。これらのルートを生成する方法を知っている人はいますか?

0 投票する
10 に答える
12036 参照

python - ジェネレーターを使用してPythonで「逆重複」なしでリストの順列を生成する方法

これは、Pythonでリストのすべての順列を生成する方法に関する質問に関連しています

次の基準に一致するすべての順列を生成する方法:2つの順列が互いに逆の場合(つまり、[1,2,3,4]と[4,3,2,1])、それらは等しいと見なされ、そのうちの1つだけが最終結果になるはずです。

例:

一意の整数を含むリストを並べ替えています。

結果として生じる順列の数が多くなるので、可能であればPythonのジェネレーターを使用したいと思います。

編集:可能であれば、すべての順列のリストをメモリに保存したくありません。

0 投票する
7 に答える
2403 参照

python - Python イテレータを生成する一連の順序付き整数の結合

ここに一見単純な問題があります: 整数のシーケンスを昇順で生成するイテレータのリストが与えられた場合、すべてのシーケンスに現れる整数のみを生成する簡潔なジェネレータを記述します。

昨夜いくつかの論文を読んだ後、私は Python で完全に最小限のフルテキスト インデクサーをハックすることにしまし(このバージョンは今ではかなり古いですが)。

私の問題は、search()各投稿リストを反復処理し、すべてのリストに表示されるドキュメント ID のみを生成する必要がある関数にあります。上記のリンクからわかるように、現在の非再帰的な「作業」の試みはひどいものです。

生成する必要があります:

これに対する洗練された再帰関数の解決策が少なくとも 1 つありますが、可能であればそれは避けたいと思います。itertoolsただし、ネストされたジェネレータ式、乱用、またはその他の種類のコード ゴルフを含むソリューションは大歓迎です。:-)

整数のセット全体をメモリに吸い込まずに、最小のリストにあるアイテムと同じ数のステップのみを関数が必要とするように調整できるはずです。将来、これらのリストはディスクから読み取られ、使用可能な RAM よりも大きくなる可能性があります。

この 30 分間、私は舌先でアイデアを思いつきましたが、それをコードにすることはできませんでした。覚えておいてください、これはただの楽しみです!

0 投票する
1 に答える
319 参照

ruby-on-rails - カスタムRailsジェネレーターにスイッチを追加するにはどうすればよいですか?

私が書いているジェネレーターの一部はすべての状況で必要なわけではないので、実行するかどうかを指定できるようにスイッチを追加する必要があります。これは--skip_migrationスイッチに似ています。

これをどのように実装すればよいですか?

0 投票する
3 に答える
703 参照

python - ジェネレーターから生成

引数として数値を取り、他の数値を生成するジェネレーターがあります。このジェネレーターによって生成された数値を使用し、それらを引数として同じジェネレーターに渡して、ある程度の長さのチェーンを作成したいと思います。

たとえば、mygenerator(2)は5、4、および6を生成します。これらの各数値にmygeneratorを適用し、生成された数値に繰り返し適用します。ジェネレーターは常に引数として渡された数よりも大きな数を生成し、2つの異なる数に対して同じ数を生成することはありません。

mygenerator(2):4 5 mygenerator(4):10 11 12 mygenerator(5):9300500

したがって、セット(9,10,11,12,300,500)は、元の数値2から「距離」2になります。これを数値9に適用すると、元の2から距離「3」の数値のセットが得られます。

基本的に私が欲しいのは、与えられた数から指定された距離を持つセットを作成することであり、Pythonでそれを行う方法を理解するのに問題があります。感謝します:)

0 投票する
9 に答える
14980 参照

iterator - イテレータとジェネレータの違いは何ですか?

イテレータとジェネレータの違いは何ですか?

0 投票する
6 に答える
39525 参照

python - Pythonに最初の(反復可能な)組み込み関数がないのはなぜですか?

Python 組み込み関数にandfirst(iterable)に似たものがない理由があるかどうか疑問に思っています (stdlib モジュールのどこかに隠れている可能性がありますが、 には表示されません)。短絡発生器の評価を実行して、不必要な(そして潜在的に無限の数の)操作を回避できるようにします。すなわちany(iterable)all(iterable)itertoolsfirst

このようにして、次のように表現できます。

list(generator)[0]ジェネレーターは終了しないため、明らかにその場合はできません。

または、照合する正規表現がたくさんある場合 (それらがすべて同じgroupdictインターフェースを持っている場合に便利です):

list(generator)[0]肯定的な一致を回避して短絡することで、不要な処理を大幅に節約できます。

0 投票する
5 に答える
1039 参照

python - 誤って発電機機能を使用した場合、警告はありますか?

私はクラスのジェネレーター関数とプライベート関数を扱っていました。不思議なんだけど

  1. __someFuncで(私の1つのケースでは偶然でした)yieldを実行すると、この関数が__someGenerator内から呼​​び出されていないように見えるのはなぜですか。また、言語のこれらの側面を参照するときに使用したい用語は何ですか?
  2. Pythonインタープリターはそのようなインスタンスについて警告できますか?

以下は私のシナリオのスニペットの例です。

私はこれに夢中になり、関数が呼び出されなかった理由を理解しようと時間を費やしました。私はついに、自分がやりたくない機能を譲っていることに気づきました。