問題タブ [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 投票する
2 に答える
8951 参照

schema - Doctrine schema.yml ジェネレーター

私は教義にかなり慣れていません。私は自分自身のためにドクトリンで2つの小さなプロジェクトを作成しましたが、今はクライアントのために大きなプロジェクトを作成しようとしています. プロジェクトには 50 を超えるテーブルが含まれます。schema.yml を生成する方法はありますか? DB Designer を試して schema.yml に変換しましたが、定義を確認して手動で書き直す必要がありました。ありがとう

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

python - 1つの要素を変更して新しいタプルを作成します

(私はOpenXML SDKを使用してIronPythonのWordprocessingDocumentオブジェクトと対話的に作業していますが、これは実際にはすべての実装に適用できる一般的なPythonの質問です)

いくつかのWord文書からいくつかのテーブルを削り取ろうとしています。テーブルごとに、テーブル行オブジェクトを提供するイテレータがあります。次に、次のジェネレータステートメントを使用して、各行からセルのタプルを取得します。

各タプルには4つの要素が含まれています。ここで、各タプルの列t[1]で、データに正規表現を適用する必要があります。タプルは不変であることを知っているので、新しいタプルを作成するか、別の方法でタプルを作成できます。それがイテレータを返すとすると、返されたth要素row.Descendants[TableCell]()を変更したいイテレータからタプルを構築するための最もPythonicな(または少なくとも最も単純な)方法は何ですか?n

今の私の強引な方法は、左側のスライス(t[:n-1])、変更されたデータt[n]、右側のスライス(t[n+1:])からタプルを作成することですが、itertoolsモジュールにはここで役立つ何かがあるはずです。

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

python - Python の非同期コールバックとジェネレーター

内部非同期 IO フレームワークを使用するように同期ライブラリを変換しようとしています。次のような方法がいくつかあります。

同期関数 ( sync_call_*) ごとに、コールバックを受け取る対応する非同期関数を作成しました。例えば

Python 初心者の質問ですが、既存のメソッドを変換してこれらの新しい非同期メソッドを使用する最も簡単な方法は何ですか? つまり、foo()上記のメソッドは次のようにする必要があります。

明らかな選択肢の 1 つは、呼び出し元の「foo」関数を効果的に「再開」する各非同期メソッドにコールバックを渡し、メソッドの最後でグローバルにコールバックを呼び出すことです。ただし、これではコードが脆弱で見にくくなり、メソッドを呼び出すたびに新しいコールバックを追加する必要がありますasync_call_*

ジェネレーターやコルーチンなどの python イディオムを使用してそれを行う簡単な方法はありますか?

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

ruby-on-rails - Railsでジェネレーターを検出できるようにするにはどうすればよいですか?

宝石を作成しているときに、Railsでジェネレーターを検出できるようにするにはどうすればよいですか?

ジェネレーターが入ったジェネレーターディレクトリがあります。〜/ .rails / generatorsからシンボリックリンクして正常に動作しましたが、gemをインストールすると、generatorsディレクトリがインストールされていても、Railsはそれを見つけられません。

0 投票する
2 に答える
9941 参照

python - Python C API を使用してジェネレーター/イテレーターを作成するには?

次の Python コードを Python C API で複製するにはどうすればよいですか?

これまでのところ、私はこれを持っています:

しかし、次にどこに行けばよいかわかりません。誰でもいくつかの提案を提供できますか?

編集

これで私が抱えている主な問題は、yieldステートメントをシミュレートすることだと思います。私が理解しているように、これは非常に単純に見えますが、実際には複雑なステートメントです。これは、独自のジェネレーターと、自動的に呼び出されるメソッドを作成し__iter__()ますnext()。ドキュメントを検索すると、PyGenObjectに関連付けられているようです。ただし、このオブジェクトの新しいインスタンスを作成する方法は不明です。PyGen_New()引数として a を取りますPyFrameObject。私が見つけることができる唯一の参照はPyEval_GetFrame()、私が望むものではないようです (または私は間違っていますか?)。誰かがこれを共有できる経験がありますか?

さらに編集

Python が舞台裏で行っていたことを (本質的に) 拡張すると、これがより明確になることがわかりました。

技術的には、シーケンスは 1 つずれていますが、アイデアは得られます。

これに関する唯一の問題は、ジェネレーターが必要になるたびに新しいオブジェクトを作成するのが非常に面倒なことです。Python では、C よりもさらに面倒です。これは、新しい型の定義に伴う怪物が必要になるためです。またyield、C にはクロージャがないため、C にはステートメントが存在しません。代わりに (Python API で見つけられなかったので — 既に存在する場合は標準オブジェクトを教えてください!)、単純で汎用的なジェネレーター オブジェクト クラスを作成しました。next()メソッド呼び出し。ここにあります (これは完全ではないため、まだコンパイルを試みていないことに注意してください。以下を参照してください)。

しかし、残念ながら、私はまだ終わっていません。StopIteration私が残した唯一の質問は、C API で例外を発生させるにはどうすればよいかということです。Standard Exceptionsにリストされているのが見つからないようです。また、おそらくもっと重要なのは、これはこの問題に取り組む正しい方法ですか?

まだこれをフォローしている人に感謝します。

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

javascript - Javascriptで書かれたレクサー?

ユーザーが完全に JavaScript で記述された UI の一連の指示を定義する必要があるプロジェクトがあります。一連の命令を解析し、それらを命令に変換する機能が必要です。100% JavaScript の解析用ライブラリはありますか? それともJavaScriptで生成するジェネレーターですか? ありがとう!

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

code-generation - 自動アプリケーション ジェネレータ

1 日に何百ものアプリケーションを出力できる自動アプリケーション ジェネレータを作成することは可能ですか? アプリケーションは単なる一連のバイナリ値です。スーパー コンピューターを配置して、1 日に数百万の組み合わせを生成し、生成されたバイナリをさまざまなサイズで出力するとします。これらのバイナリは、実際に実行されているかどうかを確認するために「実行」され、実行されている場合は、「生成されたもの」を確認するために一部のテスト担当者に送信されます。

100% バグのないソリューションが得られるかもしれません。

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

python - Python でリストからジェネレータ式を作成する

Pythonで次のことを行う最良の方法は何ですか:

これは難しい質問かもしれませんが、リスト内包表記は必要のない新しいリストを生成し、メモリを消費しているのではないでしょうか? イテレータのようなリスト内包表記を作成できればもっとよいのではないでしょうか。

0 投票する
8 に答える
12615 参照

python - リサンプリング、補間行列

プロットする目的でいくつかのデータを補間しようとしています。たとえば、N個のデータポイントが与えられた場合、10*N程度の補間されたデータポイントで構成される「スムーズな」プロットを生成できるようにしたいと思います。

私のアプローチは、N x 10 * Nの行列を生成し、元のベクトルと生成した行列の内積を計算して、1 x 10*Nのベクトルを生成することです。補間に使用したい数学はすでに作成しましたが、コードはかなり遅いです。私はPythonにかなり慣れていないので、ここにいる専門家の何人かが、コードを高速化する方法についていくつかのアイデアを教えてくれることを願っています。

問題の一部は、行列の生成に次の関数への10 * N^2呼び出しが必要なことだと思います。

(これはサンプリング理論に由来します。基本的に、私はそのサンプルから信号を再作成し、それをより高い周波数にアップサンプリングしようとしています。)

マトリックスは次のように生成されます。

N ^ 2マトリックスがメモリ内にあるという考えが好きではないため、タスクをより小さな部分に分割することを検討しています。'resampleMatrix'をジェネレーター関数にして、内積を行ごとに実行することもできますが、メモリのページングを開始するまで、コードの速度はそれほど向上しないと思います。

よろしくお願いします!

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

nhibernate - NHibernate では、グループごとに一意の ID キーにインクリメントは適切ですか? 何が適切ですか?

ERP システムであるレガシー データベースに接続しています。複合キーを使用しているテーブルがあり、それらのフィールドの 1 つがインクリメントされていますが、レコードのサブグループ内で一意です。できればいいのですが、これを変更することはできません。

たとえば、CustomerId_Field、SequenceID_Field 49、1 49、2 200、1 200、2 200、3 200、4

このMULTI-USERアプリケーションの典型的な挿入は次のようになります。

キー生成でインクリメントを使用するとこのようなことが達成されることは私の理解ですが、インクリメントはテーブル全体で一意の1つの列をインクリメントするためだけに調整されているようです。私の状況を処理する最善の方法と方法は何ですか?

ありがとうございました。