如何从Ruby调用Python代码?

5 投票
5 回答
6633 浏览
提问于 2025-04-15 11:27

有没有简单好用的Ruby和Python之间的桥接工具?还是说我直接用system()会更好?

5 个回答

2

我觉得要在Ruby中调用Python,基本上只能通过创建一个新进程来实现,比如用system()这样的方式。因为这两种语言的运行环境完全不同,所以它们必须在不同的进程中运行。

6

使用命令 gem install rubypython 来安装一个叫做 rubypython 的工具。

你可以访问 rubypython 的主页,了解更多信息。

6

你可以试试 Masaki Fukushima的库,这个库可以让你在Ruby中嵌入Python,虽然看起来这个库已经不再维护了,使用效果可能会有所不同。

使用这个库,你可以让Ruby脚本直接调用任意的Python模块。无论是扩展模块还是用Python写的模块都可以使用。

还有一个有趣的库叫 Unholy,是聪明的Why the Lucky Stiff做的,可能也会对你有帮助:

这个库可以把Ruby代码编译成Python字节码。
而且,还可以把这个字节码
转换回Python源代码,使用的是Decompyle(这个工具是包含在内的)。

需要Ruby 1.9和Python 2.5。

撰写回答