微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从 Rstudio 调用需要命令行参数非静态的 python 脚本?

如何解决如何从 Rstudio 调用需要命令行参数非静态的 python 脚本?

我正在尝试创建一个 Shiny 应用程序,用户将从下拉菜单中选择一个短字符串,然后将该字符串传递给 Python 脚本,该脚本将输出一些将在闪亮应用程序中使用的值。

使用具有硬编码所需值的 reticulate 的 py_run_file 函数效果很好。但是,使用此:

py_run_file('test_script.py arg1')

给出:

py_run_file_impl(file,local,convert) 中的错误

无法打开文件“test_script.py arg1”(是否存在?)

几个线程建议使用 system() 调用来运行带有命令行参数的 .py 脚本,但我认为这对于目标来说是不可行的,因为参数需要能够改变。其他线程建议创建一个 python 文件,该文件使用带参数的 os.system() 调用原始 python 文件,但这也不适用于我的情况。

有人有什么想法吗?

谢谢

解决方法

如果其他人在此问题上苦苦挣扎:我找到了解决方法。

我没有向 python 脚本提供参数,而是创建了一个 R 全局环境变量,然后在 python 脚本中调用它。

没想到你可以通过python脚本中的r.RVar之类的调用来引用R环境变量,类似于在R脚本中调用python变量时的py$PythonVar

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。