我的python脚本以

from __future__ import division

在 R 我做
library(rPython)
python.load("myscript.py")

我得到

最佳答案

我刚刚遇到了同样的问题 - 显然 python.load() 只是执行从该位置加载的脚本,就好像它是一堆命令一样。

我不确定默认情况下它是否以某种方式包装或前面带有一些样板代码,但似乎是这样。如果您要使用 rPython 捕获错误,它肯定会在 try... 块中执行(至少考虑到当前的 code on GitHub)。

但是,使用基于 execfile() 的解决方法为我完成了这项工作:

python.exec("execfile('myscript.py')")

另一种方法是,如果不需要在主块中执行代码,则导入模块
python.exec("import myscript")

但是,在这种稍微复杂的情况下,您可能必须处理路径问题,例如提到的here

(让包维护者知道这种情况可能是个好主意,并且它可以使用比解决方法更好的方法。)

关于python - rPython 和 __future__ 导入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45463721/

10-08 23:31