我有一个c程序(.c文件)。我正在将其转换为共享对象(.so)。如何从我的python代码中调用和运行共享对象?如果可能的话,请向我建议一个可以帮助我完成这项任务的库列表。
答案 0 :(得分:2)
如果要在共享对象中调用函数,标准模块ctypes就是你所追求的。不需要任何外部库。
加载库:
from ctypes import *
# either
libc = cdll.LoadLibrary("libc.so.6")
# or
libc = CDLL("libc.so.6")
然后从库中调用一个函数,就像调用Python函数一样:
print(libc.time(None))
答案 1 :(得分:1)
对那些使用推荐方法的人要小心。它不适用于Windows,适用于Linux,Windows功能的代码如下:
from ctypes import *
libc = cdll.msvcrt
并称呼它,
print(libc.time(None))