問題タブ [cythonize]
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.
python - Windows で cython の pyxinport のコンパイルを確認するにはどうすればよいですか?
私は Windows で Cython プロジェクトに取り組んでいます。パッケージ ディレクトリに 2 つのファイルを作成しました。
module1.pymodule1.pyx
次のコードを実行した後、 を呼び出しpyximportます。
コンパイル後に .pyd または .c ファイルが見つかりませんでした。
Windows では、これらのファイルはどこにありますか? コンパイルでエラーが発生したかどうかを確認するにはどうすればよいですか?
python - Cython cpdef 関数にデコレータを適用する方法
最近 Cython をいじっていて、Cython 関数にデコレータを適用するときにこのエラーに遭遇しました
Cdef functions/classes cannot take arbitrary decorators
これが私がいじっていたコードです:
このエラーは、cdef 関数が特定のデコレータしか使用できないことを示唆しています。cdef 関数に適用できる独自のデコレータを作成することは可能ですか?
編集:将来の読者のために:
g = plus_one(_g)@DavidWの回答で言及されているトリックはうまくいきます。再帰では機能しません。たとえばfib = memoize(fib)、私のコード例で実行すると、最上位の呼び出しはメモ化されますが、fib への再帰呼び出しはメモ化されません。つまり、呼び出しfib(5)は呼び出しの結果をメモ化しfib(5)ますが、再帰呼び出しはメモ化しませんfib(4), fib(3), fib(2), fib(1)(つまり)
@DavidWが指摘しているように、cdef, cpdef関数はコンパイル時に完全に決定されます。装飾は実行時のものであり、実際の機能を更新しません。
python - __file__ に相当する pyd ファイルのパスを取得する方法
package.pyにパッケージ化しようとし ているファイルがありますpackage.pyd。私は次の声明を持っていますpackage.py
実行すると問題なく動作しますが、別のファイルpackage.pyにインポートすると、次のエラーメッセージが表示されますpackage.pydwrapper.py
.pyd ファイルの場所を取得するにはどうすればよいですか。また、.pyd または .py として実行されているかどうかを確認する方法もあります。
ありがとうございました!
python - C++ 関数 Cython から PyObject を含む複雑なオブジェクトを返す
Cython を使用して、いくつかの C++ クラスと関数を Python にラップしようとしています。これまでに 2 つのクラスをラップしましたが、今度は関数をラップしたいと思います。
関数のシグネチャは
std::map<std::string, std::vector<PyObject*>> analyze(PyObject* img, LandmarkDetector::CLNF& clnf_model, LandmarkDetector::FaceModelParameters& params);
CLNFクラスとクラスを正常にラップしましたがFaceModelParameters、このanalyze関数をラップするのに問題があります。
この関数はPyObject*opencvを扱っているのでsを扱っているのですが、言語間で簡単に受け渡しできるようにしたいです。これらの関数を使用して、cv::Pointと python オブジェクトの間、および python Mat とcv::Mat.
これは私のpyxファイルです:
しかし、コンパイルしようとすると、エラーメッセージが表示されます
(これは行を指しますmap[string, vector[object]] analyze [...])