Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
强制RStudio使用Python 3.6而不是Python 2.7_Python_Rstudio - Fatal编程技术网

强制RStudio使用Python 3.6而不是Python 2.7

强制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

我想在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)
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)