On 09 Oct 2007 17:45:12 +0200, Stefan Arentz <[EMAIL PROTECTED]> wrote: >"Chris Mellon" <[EMAIL PROTECTED]> writes: > >> On 09 Oct 2007 17:20:09 +0200, Stefan Arentz <[EMAIL PROTECTED]> wrote: >> > >> > Is there an easy way to implement a specific method of a Python class >> > in C? Like a native method in Java? I would really like to do the >> > majority of my class code in Python and just do one or two methods >> > in C. >> > >> > S. >> > >> >> Weave kinda does this - you can use it write inline C code, which it >> extracts and compiles for you. (http://scipy.org/Weave) >> >> You might also want to look at Pyrex and/or Cython, which let you >> write in a Python-like language that is compiled to C. >> (http://www.cosc.canterbury.ac.nz/greg.ewing/python/Pyrex/ and >> http://cython.org). >> >> Depending on what you want to do in C, just writing it as a normal >> shared library and calling it with ctypes might also be an effective >> solution. (in the standard library, as of 2.5) > >Yeah I'm really trying to do this without any dependencies on external >libraries. The ctypes way looks interesting but I had really hoped for >something more JNI-like :-/ >
JNI is awful. I can't imagine why you'd want something like it. However, since you do, why don't you just use the CPython/C API? It's the direct equivalent of JNI (sorry, it's not quite as complex or horrible, though). http://docs.python.org/api/api.html Jean-Paul -- http://mail.python.org/mailman/listinfo/python-list