2つのコマンドライン引数を使用するPythonコードがあります。私はすべてのコマンドラインタスクのためにLinux端末を使用しています。今私はPythonコードを高速化するためにCythonを使用しようとしています。PythonコードをCythonでコマンドライン引数で実行する
setup.py
from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
setup (
cmdclass = {'build_ext': build_ext } ,
ext_modules = [
Extension ("myCode", ["myCode.py"]) ,
])
そして使用してCに私のPythonコードをコンパイル:私はこのsetup.pyファイルを作成することによりにbuild_extモジュールを使用してCにPythonコードをコンパイルしていることについて
python setup.py build_ext -i
以下が生成された:
[file]myCode.c
[file]myCode.so
[folder]build
--[folder]temp.linux-x86_64-2.7
----[file]myCode.o
生成されたファイルをコマンドライン引数で実行します。 は今Pythonで、私はいつものコマンド
>> python myCode.py arg1 arg2
を使用していたティル私はCythonに非常に新しいです、Infactは私はコードレベルのアルゴリズムの最適化後のPythonの本来のスピードの問題に対処するためにそれを使用し始めました。私は実行するファイルと変換されたCコードを実行する方法とコマンドライン引数を入力する必要があります。前もって感謝します。
Cythonがコンパイルされた後、 'myCode.so'がモジュールになります。それを実行することはできません。インポートする必要があります: 'python -c 'import myCode''。 – phd
@phdこの行を正確にどこに置くべきですか?私はそれを適切に配置すると、その目的を理解するようになります。 – harshvardhan
これは一例にすぎません。 'myCode'はモジュールなので、他のモジュールと同じようにインポートする必要があります。それはちょうど.pyモジュールではなく、コンパイルされた.soです。 – phd