如何在PyCharm终端中激活虚拟环境?

155 投票
33 回答
351042 浏览
提问于 2025-04-17 21:33

我已经设置好了PyCharm,创建了我的虚拟环境(可以通过虚拟环境命令,或者直接在PyCharm里创建),并把这个环境设置为我的解释器。一切都运行得很好。

但是,当我通过“工具,打开终端”来打开一个终端时,显示的命令行提示符并没有使用虚拟环境;我还是得在那个终端里输入source ~/envs/someenv/bin/activate来激活它。

还有一种方法是先在一个命令行里激活环境,然后再从这个环境中启动PyCharm。这样也能用,但看起来很麻烦,而且如果我在PyCharm里切换环境或项目,就会出现大问题:我可能会用错环境。

有没有什么更简单的方法,让“工具,打开终端”自动激活虚拟环境呢?

33 个回答

9

如果你使用的是Windows系统,那就简单多了。
如果你已经有了虚拟环境,只需要找到它的文件夹,里面有一个叫 activate.bat 的文件,这个文件在 Scripts 文件夹里。复制这个文件的完整路径,然后在PyCharm的终端中粘贴,按下 Enter 键,就完成了!

如果你需要创建一个新的虚拟环境:

去文件 > 设置,然后搜索 项目解释器,打开它,点击齿轮按钮,选择你想要创建环境的位置,然后按照第一段的步骤操作就可以了。

齿轮图标!

41

我找到了一种小技巧,居然对我有用。你只需要把默认的终端从Power Shell换成CMD就行。

  1. 打开pycharm --> 进入设置 --> 工具 --> 终端
  2. Shell PathPS 改成 C:\Windows\system32\cmd.exe
  3. 勾选 Activate virtualenv 这个选项
  4. 点击 apply,然后打开一个新的终端

现在是2021年,你不需要再指定文件路径或者添加环境变量了。

更新:现在是2022年,我又遇到了同样的问题 解决办法:按照上面的步骤操作,另外确保你选择了你的虚拟环境中的python.exe作为项目的python解释器,这样就可以了

43

对于Windows用户,在使用PyCharm和Windows下的虚拟环境时,你可以在cmd.exe中使用/k参数来自动设置虚拟环境。

你可以去设置,找到终端,默认的shell,然后添加/K <path-to-your-activate.bat>

我没有足够的声望去评论之前的回答,所以在这里发这个更正的版本。这真的能节省很多时间。

更新:

注意:现在Pycharm直接支持虚拟环境,对我来说效果很好,所以我之前的解决办法就不需要了。

61

更新:

在设置中的偏好选项(Preferences)| 工具(Tools)| 终端(Terminal)里的设置是全局的。
如果你为每个项目都使用一个虚拟环境(venv),记得使用当前的路径变量和一个默认的虚拟环境名称:

"cmd.exe" /k ""%CD%\venv\Scripts\activate"" 

对于Windows用户:在使用PyCharm和虚拟环境时,可以通过在cmd.exe中使用/K参数来自动设置虚拟环境。

如果你用的是PyCharm 3或4:去设置,然后选择终端,在默认shell里添加/K <你的activate.bat的路径>

如果你用的是PyCharm 5:去设置,然后选择工具,再选择终端,在Shell path里添加/K <你的activate.bat的路径>

如果你用的是PyCharm 2016.1或2016.2:去设置,然后选择工具,再选择终端,在Shell path里添加""/K <你的activate.bat的路径>""(记得加上引号)。同时在cmd.exe周围也加上引号,最终结果是:

"cmd.exe" /k ""C:\mypath\my-venv\Scripts\activate.bat""

120

编辑:

根据 这个链接,PyCharm 2016.3(发布于2016年11月)现在直接支持在终端中使用虚拟环境。

它可以自动支持 bash、zsh、fish 和 Windows 的命令行。你可以在设置(Preferences)| 工具(Tools)| 终端(Terminal)中选择“激活虚拟环境”(Activate virtualenv)。

你还需要确保你的虚拟环境路径包含在项目结构的内容根文件夹中。如果你的环境没有包含在项目目录里,可以去设置(Preferences)| 项目(Project)| 项目结构(Project Structure)进行调整。


***旧方法:***

在你的主文件夹中创建一个名为 .pycharmrc 的文件,内容如下:

source ~/.bashrc
source ~/pycharmvenv/bin/activate

在最后一个参数中使用你的虚拟环境路径。

然后在设置中,将 Shell 的首选项设置为 项目设置(Project Settings)中的 Shell 路径:

/bin/bash --rcfile ~/.pycharmrc

撰写回答