4

Linux環境でpythonとcythonを使用しようとしているのでprimes.pyx、cythonのドキュメントに記載されている例を使用しようとしています。

ディレクトリに作成primes.pyxし、 xyzcythonを使用してそのファイルをコンパイルしましprimes.pyxた。Pythonインタープリターを呼び出して、素数のインポートを試みた後、次の問題が発生しました。

ImportError: No module named primes

誰かが私を助けてくれませんか。

4

2 に答える 2

4

Cython モジュールは、使用する前にコンパイルする必要があります。2 つの (適切な) オプションがあります。このページsetup.py説明されているように、モジュールの を作成するか、.pyximportimport

最初のオプションは、他のライブラリ依存関係を持つモジュールがある場合、または複数のファイルに分散している場合に最適です。2 番目のオプションは、自己完結型の小さなモジュールに最適です。

を使用するには、 Cython モジュールをインポートする前pyximportに追加します。import pyximport; pyximport.install()次に、importCython モジュールを作成すると、Cython は必要に応じてモジュールを自動的にコンパイルします。

于 2012-10-16T04:59:48.017 に答える
0

.pyxこれは、拡張子なしで直接ファイルをインポートできるモジュールをインポートするのを忘れた場合のように思えますsetup.py。そのドキュメントはここにあります。

追加してみる

import pyximport; pyximport.install()

モジュールの先頭に追加するか、実行する前にインタープリターで実行してくださいimport primes

于 2012-10-16T04:53:23.877 に答える