c++ - 如何为命令行应用程序编写 Python 绑定(bind)

标签 c++ python c binding

我有兴趣为我在 Linux 上使用的现有命令行实用程序编写一个 python 绑定(bind)或包装器,以便我可以在我的 python 程序中访问它的功能。有人可以向我指出执行此操作的标准方法吗?

目前,我已将命令行可执行文件包装在 subprocess.Popen 调用中,该调用可以工作,但感觉很脆弱,我想让两侧之间的集成更加稳定,以便它可以在适当的地方工作除了我自己的电脑!

最佳答案

如果您必须使用命令行界面,那么 subprocess.Popen 是您最好的选择。请记住,您可以使用 shell=True 来让它选择路径变量,您可以使用 os.path.join 来使用依赖于操作系统的路径分隔符等。

但是,如果您的命令行实用程序具有共享库,请查看 ctypes,它允许您直接连接到这些库并直接公开功能。

关于c++ - 如何为命令行应用程序编写 Python 绑定(bind),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4101130/

相关文章:

python - 字典元素到字符串

c++ - 将字符数组分解为单词

c - 多核和 OProfile

C++: C1083: 'afxwin.h' : 没有这样的文件或目录 - VS2010 with VC6 daffodil

c++ - 如何获取嵌套 vector 中的元素类型?

c++ - std::next_permutation() 来自 vector 的一部分

C++:奇怪的多重定义错误和问题

python - 使用 __del__ 观察 Python 和 PyQt 中的对象破坏

python - 将 login_required 与 user_passes_test 组合时,Django 'User' 对象没有属性 'user'

c - editline 选项卡补全应该工作吗?