强制RStudio使用Python 3.6而不是Python 2.7
我想在RStudio中执行Python脚本(这不是关于在R脚本中通过retracite调用Python,而是关于在RStudio中运行Python脚本,尽管我看到使用了retracite)。我有一个名为test.py的非常简单的脚本,它具有以下命令:强制RStudio使用Python 3.6而不是Python 2.7,python,rstudio,Python,Rstudio,我想在RStudio中执行Python脚本(这不是关于在R脚本中通过retracite调用Python,而是关于在RStudio中运行Python脚本,尽管我看到使用了retracite)。我有一个名为test.py的非常简单的脚本,它具有以下命令: print("test") 运行此命令时,RStudio使用Python 2.7而不是系统默认值3.6: > reticulate::repl_python() Python 2.7.15 (/usr/bin/python) Reticul
print("test")
运行此命令时,RStudio使用Python 2.7而不是系统默认值3.6:
> reticulate::repl_python()
Python 2.7.15 (/usr/bin/python)
Reticulate 1.10 REPL -- A Python interpreter in R.
>>> print("test")
test
>>>
>>>
如何强制RStudio使用默认的系统Python版本(在我的例子中是3.6版)而不是2.7版
Python的默认版本:
username@usernameVB:~$ python
Python 3.6.7 (default, Oct 22 2018, 11:32:17)
[GCC 8.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
编辑:我找到了这个解决方法:转到控制台,在运行Python脚本之前执行以下命令:
> library(reticulate)
> use_python("/usr/bin/python3")
然后,执行您的Python脚本(它会选择正确的Python版本):
关于此主题似乎提出了一个问题:来自此文档: 在给定的系统上提供多个版本的Python(以及给定版本中的多个
conda
或virtualenv
环境)并不少见
在这种情况下,将扫描系统上安装的各种Python版本,以查看其中是否包含Python包(将使用满足此要求的第一个版本)
默认情况下,首先检查系统路径上找到的Python版本,然后检查Python的其他常规位置(例如/usr/local/bin/Python
,/opt/local/bin/Python
,等等)。这就是发生在你身上的事情
有两种方法可以提示应该使用哪个版本的Python:
a) 通过将Networkite_PYTHON环境变量的值设置为PYTHON二进制文件
请注意,如果设置此环境变量,则将始终使用指定版本的Python
要设置Networkite_PYTHON的值,请插入以下内容:
在项目Rprofile中,路径是首选的Python二进制文件/usr/bin/python3
b) 通过调用这些函数之一(您已经在执行此选项):
作用
描述
使用python()
指定特定Python二进制文件的路径
使用\u virtualenv()
指定包含Python virtualenv的目录
使用\u condaenv()
指定Conda环境的名称
> print("test")
[1] "test"
>
> reticulate::repl_python()
Python 3.6.7 (/usr/bin/python3)
Reticulate 1.10 REPL -- A Python interpreter in R.
>>>
Sys.setenv(RETICULATE_PYTHON = PATH)