如何通过 python 脚本运行 .so 文件

新手上路,请多包涵

我有交流程序(.c 文件)。我正在将其转换为共享对象 (.so)。我如何从我的 python 代码调用和运行共享对象?如果可能的话,请给我推荐一个可以帮助我完成这项任务的库列表。

原文由 user3415910 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 593
2 个回答

如果你想在共享对象中调用函数,标准模块 ctypes 就是你所追求的。不需要任何外部库。

加载库:

 from ctypes import *
# either
libc = cdll.LoadLibrary("libc.so.6")
# or
libc = CDLL("libc.so.6")

然后从库中调用一个函数,就像调用 Python 函数一样:

 print(libc.time(None))

原文由 Alan 发布,翻译遵循 CC BY-SA 3.0 许可协议

使用推荐方法的人要小心。它在 windows 上不起作用,适用于 linux,windows 函数的代码如下:

 from ctypes import *
libc = cdll.msvcrt

并称它为

print(libc.time(None))

原文由 Aingkaran Suppiah 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题