我已使用从官方Python站点下载的官方OSX软件包在High Sierra的默认位置安装了Python 3.7。当我运行时

which python3

我明白了
/Library/Frameworks/Python.framework/Versions/3.7/bin/python3

然后,我在R Studio中运行以下行
reticulate::use_python(python = '/Library/Frameworks/Python.framework/Versions/3.7/bin/python3')
sys <- import("sys")
sys$version

看来我仍指向2.7的默认安装
[1] "2.7.10 (default, Oct  6 2017, 22:29:07) \n[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)]"

我尝试了许多其他途径,例如
/usr/local/bin/python3
/usr/local/bin
/Library/Frameworks/Python.framework/Versions/3.7/lib
/usr/bin/python
/Applications/Python 3.7

等等,但似乎没有任何作用。 (仍显示2.7.10)

显然,我尝试使用谷歌搜索解决方案,但不幸的是无济于事。
任何指导将不胜感激。

更新:
我终于通过以下方式使它起作用:
  • 按照serv-inc
  • 的建议重新启动R session
  • 运行以下命令:
    library(reticulate)reticulate::use_python(python = '/Library/Frameworks/Python.framework/Versions/3.7/bin/python3', required = T)sys <- import("sys")sys$version
    得到以下响应:
    [1] "3.7.0 (v3.7.0:1bf9cc5093, Jun 26 2018, 23:26:24) \n[Clang 6.0 (clang-600.0.57)]"
  • 如果我错误地指定了诸如/usr/bin/python之类的错误路径,我将需要重新启动R session ,否则网状结构将继续引用现有的Python版本。

  • 简而言之,问题是由在对reticulate::use_python函数的初始调用中指定的错误路径引起的,并且随后具有正确路径的调用将不生效,因为它需要"new" R session 。

    最佳答案

    参见https://github.com/rstudio/reticulate/issues/45:



    另请参阅https://github.com/rstudio/reticulate/issues/227:





    有时,仅搜索功能名称“reticulate::use_python”会有所帮助。

    09-27 23:34