首页 > 解决方案 > 将环境变量与 R reticulate 一起使用

问题描述

我有一个 Python 包,我想通过网状在 R 中使用它。但是,该 Python 函数似乎看不到 R 环境中的环境变量。如何成功设置环境变量供 Python 函数查看?

因此,如果我有一个 python 函数,例如:

import os

def: toy_function():
    return os.environ['ENVVAR']

我希望能够做到:

library(reticulate)
source_python("toy_function.py")
sys.setenv("ENVVAR"="HELLO")
print(toy_function())

并看到“你好”。目前我收到一个错误,即找不到“ENVVAR”。

谢谢!

标签: pythonrreticulate

解决方案


哦,原来有一个奇怪的解决方法,你只需要直接在 Python 中从 R 调用环境变量设置:

py_run_string("import os")
py_run_string("os.environ['ENNVAR'] = 'HELLO'")

推荐阅读