Python版本配置

定位Python

Python的几个安装在给定系统上可用。这个网状的包装罐绑定到几乎任何Python安装,并提供各种允许用户隐式或显式指定选择哪个Python安装。

请注意,要使reticulate绑定到Python版本,它必须具有使用共享库支持进行编译(即使用--启用共享标志)。

考虑以下代码:

图书馆(网状)
复制(_E)("1+1")

在这种情况下,reticulate将搜索合适的Python安装。在没有其他提示的情况下(详见下文),网状将回退到名为“r-reticulate”的环境,如果必要的。

考虑另一种情况:

图书馆(网状)
松软的<- 进口(“scipy”(scipy))
松软的$阿明(c(c)(1,,5,7))

在这种情况下,reticulate将首先查找名为“r-scipy”,如果它不存在,它将回退到环境命名为“r-网状”。

提供提示

有几种方法可以提供有关哪个版本的提示应使用Python:

  1. 通过设置网状_PYTHON环境变量转换为Python二进制文件。请注意,如果您设置此环境变量,则指定的Python版本将始终使用(即这是规定性的,而不是咨询性的)。要设置的值网状_PYTHON,插入Sys.setenv(RETCULATE_PYTHON=路径)到您的项目中.R配置文件,其中路径你喜欢Python吗二元的。

  2. 通过调用以下函数之一:

功能 描述
use_python() 指定特定Python二进制文件的路径。
use_virtualenv() 指定Python virtualenv的名称(或路径)。
use_condaenv() 指定Conda环境的名称。

例如:

图书馆(网状)
使用python(“/usr/local/bin/python”)
使用虚拟机(“~/myenv”)
use_condaenv公司(“梅耶夫”)

如果use_virtualenv()函数的名称虚拟环境(与路径相反),它将在默认情况下,virtualenv根目录~/.virtualenvs(虚拟人)、和通过设置环境变量进行配置工作_主页.

这个use_condaenv()函数将使用任何conda二进制文件位于路径。如果要使用特定您可以使用康达参数。对于例子:

use_condaenv公司(康达诺夫= “r-nlp”,康达= “/opt/anaconda3/bin/conda”)

请注意使用*()函数采用可选必修的参数。默认情况下,值为必需=空相当于必需=真在大多数情况下。如果必需=FALSE则考虑调用关于在何处查找Python的可选提示(即,它不会生成如果指定的版本不存在,则出错)。

发现的顺序

发现和使用Python安装的顺序是如下所示:

  1. 如果指定网状_PYTHON环境变量。(指向Python的路径二进制)

  2. 如果指定网状_PYTHON_ENV环境变量。(或的路径虚拟环境或conda环境的名称)

  3. 如果指定,调用引用的位置use_python(),use_virtualenv()、和use_condaenv()具有必需=真(该默认设置)。

  4. 如果环境变量虚拟_ENV已定义(通常通过运行激活R之前的脚本启动,或使用“自动激活项目-本地Python”在RStudio IDE中启用environments”选项),然后从使用激活的环境。

  5. 如果当前工作目录包含pyproject.toml文件从诗歌环境来看,Python装置从诗歌使用环境。

  6. 如果当前工作目录包含关联的Pipfile对于pipenv,使用来自pipenv的Python安装。

  7. 如果当前工作目录包含名为“venv”、“virtualenv”、Python虚拟环境,来自虚拟环境的Pythons是已使用。

  8. 如果有调用(通常来自使用网状),形式为:导入(“bar”,delay_load=list(environment=“r-barlyr”),并且存在一个名为“r-barlyr”,它被使用。

  9. 如果有任何呼叫use_python(),use_virtualenv(),或use_condaenv()是制造的具有必需=FALSE,或从包中.onLoad()函数,以及引用的python安装存在,则使用它。

  10. 如果有人打电话给导入(“bar”),在那里存在名为的虚拟环境或conda环境“r-bar”,它被使用。

  11. 如果指定网状_传回环境变量。(指向的路径python二进制)

  12. 在没有任何偏好表达的情况下通过上述方式,reticulate又回到了使用虚拟名为的环境“r-网状”如果不存在,网状将提供创建一个。

  13. 如果“r-reticulate”环境不可用且无法使用创建,然后我们回到使用Python路径,或在Windows上,注册表引用的Python。如果两者都有蟒蛇蟒蛇3位于路径,那么网状会更喜欢蟒蛇3,除非只有蟒蛇已安装NumPy,或蟒蛇3是为与R不同的体系结构构建的(例如。,x86)。

Python包

您可以了解有关将Python包安装到virtualenvs中的更多信息或Conda环境安装Python包.

配置信息

您可以使用py_config()要查询的函数有关正在使用的Python的特定版本以及系统上发现的其他Python版本列表:

py_config(配置)()

您还可以使用py_discover_config()函数到看看在没有实际加载的情况下将使用什么版本的Python蟒蛇:

py发现配置()