繁体   English   中英

将 Python 2.7 和 3.x 解释器添加到 PyCharm

[英]Adding Python 2.7 & 3.x Interpreters to PyCharm

我在从新的 Anaconda 环境向 PyCharm 添加项目解释器时遇到问题。 我在一个 Python 2.7 环境 (C:\Anaconda2\python.exe) 上安装了 Anaconda2,我已经在 Pycharm 上使用了几个月没有问题。

我正在尝试向我的 PyCharm 添加第二个 Python 3.6 解释器(来自 C:\Anaconda2\envs\py36\python.exe)。 将本地解释器添加到 Pycharm 后,我遇到了 MS Visual C++ 运行时错误 R6034“应用程序已尝试错误地加载 C 运行时库”。

从粗略的谷歌搜索来看,Python 2 和 3 之间似乎存在运行时 DLL 冲突(可能是 msvcr90.dll)。我看到的所有修复都涉及编辑应用程序的可执行路径,但我认为这对我来说不可行Pycharm 用例。 我如何摆脱这个错误,或者只是通常能够通过我的 PyCharm 使用 Python 2 和 3 解释器?

我认为这是 Anaconda 和计算机中不同的 msvc dll 的问题。

可以在命令行中测试conda命令,看是否出现R6034。 如果发生这种情况,请尝试以下解决方案:

我对 Anaconda3 和 Python27 也有类似的问题。 我通过在任何 conda 环境之外的 cmd 中执行以下命令解决了这个问题:

conda install msvc_runtime

安装包后,打开一个新命令并测试是否仍然出现 R6034 错误。

我有一个类似的问题,并且能够通过选择解决它:

文件 --> 无效缓存/重启...

从 PyCharm 的主菜单。

您可能还需要仔细检查您在 PyCharm 中定义为 Python 解释器的任何 Conda 环境是否已根据文档正确配置

这个问题真是让人抓狂。 如果我只是想获得有关功能的帮助,百万个 R6034 错误窗口会一个接一个地弹出。 我研究了几个月,开/关,用 JetBrains 打开票都无济于事。

如果您需要多个版本的 Anaconda,并且您的 PATH 中有 Anaconda 路径,则在启动 PyCharm 之前,从 PATH 中删除所有 Anaconda 路径,然后启动 PyCharm。 在 PyCharm 启动之前,您需要为 PyCharm 创建一个单独的包装器启动器脚本来修复 PATH。 请注意,启动 PyCharm 然后在 PyCharm 中修复解释器和 python 控制台 PATHS 的替代方法并不真正有效。 因为 PyCharm 可能正在使用系统路径来访问 python 以阅读文档等。所以唯一干净的修复是在 PyCharm 启动之前修复系统路径。

了解需要完成的操作后,您就可以使用自己的步骤/工具。 这对我有用:

  1. 创建修改 PATH 的脚本。 为此,我使用了 Python,sed 或任何其他工具也都可以。 该脚本简单地检查每个路径元素,如果它引用 Anaconda 则将其删除,然后将它们放回一起:

    path_cleanup.py:

     path_old = os.environ['PATH'] path_python_removed = [loc for loc in path_old.split(pathsep) if not ('python' in loc or 'Ana' in loc)] print(pathsep.join(path_python_removed))
  2. 创建 Powershell 脚本来修复 PATH 并从该干净的环境中启动 PyCharm。 要找到 PyCharm 路径,最简单的方法是按常规方式启动它,然后前往任务管理器,右键单击 pycharm64.exe 进程并选择“打开文件位置”以获取完整路径。 pycharm_clean.ps1

     $Env:Path=python path_cleanup.py # call the script to fix the PATH start-process $PYCHARM_PATH\pcharm64.exe -WindowStyle Hidden # enter your full path to pycharm and put it into background.
  3. 您可以创建一个快捷方式来启动 pycharm_clean.ps1 + 您可以将它添加到您的 Windows 启动文件夹以在登录时启动: %APPDATA%\Microsoft\Windows\Start Menu\Programs\Startup\

如果您在 Cygwin 中使用 BASH,那么路径清理步骤需要更多调整,但您无能为力。 如果您需要帮助,请发表评论,我也可以添加该脚本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM