Notice
Recent Posts
Recent Comments
Link
SeouliteLab
파이썬으로 C 코드와 상호작용하기: cffi 라이브러리 활용 방법 본문
cffi는 파이썬에서 C 코드와의 상호작용을 가능하게 하는 라이브러리입니다. 이를 통해 파이썬에서 C 코드를 호출하고, C 함수를 호출하여 빠른 연산이 필요한 작업을 수행할 수 있습니다. cffi는 CPython 및 PyPy와 호환되며, C 확장 모듈을 작성하거나 외부 라이브러리에 바인딩을 만들 때 유용합니다. 아래는 cffi의 주요 기능과 사용법을 살펴보겠습니다.
기능 1: C 함수 호출
cffi를 사용하면 파이썬에서 C 함수를 직접 호출할 수 있습니다. 이를 통해 C로 작성된 코드를 활용하여 파이썬에서 빠른 작업을 수행할 수 있습니다.
예제 1: C 함수 호출하기
from cffi import FFI
ffi = FFI()
ffi.cdef("""
int add(int a, int b);
""")
lib = ffi.dlopen("./mylib.so")
result = lib.add(3, 4)
print("결과:", result)
기능 2: C 코드 호출
cffi를 사용하여 파이썬에서 C 코드를 호출할 수 있습니다. 이를 통해 C 코드를 파이썬 모듈처럼 사용할 수 있습니다.
예제 2: C 코드 호출하기
from cffi import FFI
ffi = FFI()
with open("mylib.h", "r") as f:
ffi.cdef(f.read())
lib = ffi.dlopen("./mylib.so")
result = lib.add(3, 4)
print("결과:", result)
기능 3: 외부 라이브러리에 바인딩 생성
cffi를 사용하여 외부 C 라이브러리에 파이썬 바인딩을 생성할 수 있습니다. 이를 통해 파이썬에서 C 라이브러리를 편리하게 활용할 수 있습니다.
예제 3: 외부 라이브러리에 바인딩 생성하기
from cffi import FFI
ffi = FFI()
ffi.cdef("""
int my_function(int arg);
""")
lib = ffi.dlopen("external_lib.so")
result = lib.my_function(42)
print("결과:", result)