来自鲁比的Python脚本

Call python script from ruby

例如,我可以在php中使用python脚本,如下所示:

1
exec("python script.py params",$result);

其中"script.py"-脚本名和变量$result保存输出数据。

我怎么能用红宝石做它?我是说,从Ruby调用python脚本。


您可以shell到任何shell二进制文件,并用backticks捕获响应:

1
result = `python script.py params`

其中一种方法是执行。

1
result = exec("python script.py params")


做同样事情的另一种方法是,

1
system 'python script.py', params1, params2


我使用了下面一个Ruby模块中的python调用。

在我的例子中,使用exec()没有起作用,因为它会中断当前进程,并导致我运行的模拟失败。

1
2
# run python script
`python #{py_path_py} #{html_path_py} #{write_path_py}`