ページ

2010年3月19日

ちょっとだけctypes

最近、あんまりブログ書いていないので、とりあえず書きます。最近、というかちょっと前にお仕事でやったことのまとめです。

まず、僕はctypesが嫌いです。嫌いというよりは怖いです。Cと同じように簡単にいろんなものが破壊できます。でも、Cのライブラリを呼び出すのがとても楽チンで便利です。

まずは、僕が書いたコードです。


import ctypes
mylib = ctypes.cdll.LoadLibrary("libmylibrary.so")
result = mylib.my_function("arg1", 1)
:

うーん、説明するまでもないですね。LoadLibraryでライブラリをロードしています。これは、もう少しいろんな書き方ができますが、やっていることは本質的に同じです。
で、あとは、ロードしたライブラリの関数がそのまま、コールできます。引数は文字列や数字であれば大体自動で変換してくれるので、あまり気にする必要はありません。戻り値も数字であれば気にする必要がありません。数字以外の戻り値は、関数におまじないをすれば大丈夫です。

とっても楽です。でも怖いです。

0 件のコメント: