Pythonのポインタで、

今回はPythonでポインタをいじろう!
という感じで色々調べてみました。(いや、ライブラリしか見てないけど

とりあえずctypesを呼びましょう

from ctypes import*

#Mac:
#libc = CDLL("/usr/lib/libc.dylib")
#Linux
libc = CDLL("libc.so.6")

まぁ、これは今使いませんが、とりあえずw

>>> i = c_int(123)
>>> pi = pointer(i)
>>> pi
<__main__.LP_c_long object at 0x2cc660>
>>> pi.contents
c_long(123)
>>> pi.contents.value
123
>>> pi[0]
123
>>> pi[1]
0
>>> pi[2]
0
>>> pi[0] is pi.contents.value
True

メモリのアクセスが出来るか分からんけど、出来たらちょー良さげ。