Python
[python] Cython 으로 c, pyd 로 converting 하기
믹-아
2020. 5. 7. 13:35
python3, windows 를 기준으로 작성했습니다.
python 으로 작성한 코드를 C# 에서 사용해야 할 일이 있어서 컨버팅 작업이 필요했다.
python 코드를 바로 C# 에서 사용하는 방법도 있었는데 코드 보안을 위해 pyd (dll)로 컨버팅 하기로 했다.
$ pip install Cython
일단 Cython이 없다면 설치해주고,
# sum.pyx
def sum(a,b) :
return a + b
파이썬 코드를 작성하는데 확장자를 *.pyx 로 해준다.
# 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("sumdll", ["sum.pyx"])] )
setup.py 의 코드는 이렇게 작성하고,
$ python .\setup.py build_ext --inplace
위의 커맨드로 setup.py 를 실행시킨다.
c, pyd 로 컨버팅된 파일이다. pyd 파일은 파이썬, 운영체제 버전에 따라 뒤에 붙는 이름이 조금 달라진다.