Python ctypes

2103 ワード

PythonとCのハイブリッドプログラミングツールはいろいろありますが、ここではPython標準ライブラリに付属するctypesモジュールの使い方を紹介します.Pythonのctypesを初めて認識するにはC関数を使用し、まずCを動的リンクライブラリの形式、すなわちWindowsの下にコンパイルする必要がある.dllファイル、またはLinuxの下にあります.soファイル.
ctypesがC標準ライブラリをどのように使用するかを見てみましょう.Windowsシステム下のC標準ライブラリ動的リンクファイルはmsvcrt.dll(一般的にはディレクトリC:WindowsSystem 32とC:WindowsSysWOW 64でそれぞれ32-bitと64-bitに対応しており、使用時には特に区別する必要はなく、Pythonが適切に選択する)Linuxシステム下のC標準ライブラリ動的リンクファイルはlibc.so.6(64-bit Ubuntuシステムを例にとると、ディレクトリ/lib/x 86_64-linux-gnuの下)例えば、次のコードフラグメントはC標準ライブラリにインポートされ、printf関数を使用してメッセージが印刷されます.
import platform
from ctypes import *
if platform.system() == 'Windows':
    libc = cdll.LoadLibrary('msvcrt.dll')
elif platform.system() =='Linux':
    libc = cdll.LoadLibrary('libc.so.6')
libc.printf('Hello ctypes!
'
)

しゅつりょく
Hello ctypes!