如何在Ruby中运行Python代码?

时间:2013-08-16 14:49:00

标签: python ruby

我想将我的Python代码放在​​Ruby Module中并运行它,但我不知道如何将Python独立脚本导入Ruby。以下是我的代码:

Python代码

import ystockquote
import pprint
pprint.pprint(ystockquote.get_all('GOOG'))

红宝石

module PythonInRuby
require "rubypython"

RubyPython.start # start the Python interpreter

cPickle = RubyPython.import("cPickle")
p cPickle.dumps("Testing RubyPython.").rubify

RubyPython.stop # stop the Python interpreter

问题是在RubyPython.startRubyPython.stop之间,我不知道如何导入Python文件。另一个问题是在这个模块中运行Ruby的代码是什么?

1 个答案:

答案 0 :(得分:1)

这是一种完全过度,过于复杂的方式,但无论如何都是这样。

假设您的python模块(文件)名为googstock.py。它应该是这样的:

import ystockquote

def run():
    return ystockquote.get_all('GOOG')

然后你的Ruby看起来像这样:

RubyPython.start

googstock = RubyPython.import('googstock')
puts googstock.run().rubify #Get the stock data into Ruby

RubyPython.stop

在未来,尝试从Ruby中获取Yahoo!的API中的股票价值。它不会那么难。