为了账号安全,请及时绑定邮箱和手机立即绑定

在 Mac 上使 VS Code 终端匹配调试环境

在 Mac 上使 VS Code 终端匹配调试环境

眼眸繁星 2022-03-05 15:15:25
我正在教一个初学者 python 课程,环境是 Anaconda、VS Code 和 git(加上一些额外的 a requirements.txt)。对于 windows 学生来说,这运行得很好,但是 mac 学生有一个现有的 python (2.7) 可以应对。windows学生(即他们有一台windows计算机),他们调试时的环境与他们的控制台环境相匹配。然而,mac 学生似乎被锁定在他们的 2.7 环境中。我已经尝试过别名,如建议here和herealias python2='python'alias python='python3'alias pip2='pip'alias pip='pip3'我修改了.bash_profile文件echo 'export PATH="/Users/$USER/anaconda3/bin:$PATH"' >>.bash_profile当在 VS Code 外部启动时,这两种方法似乎都可以完美地修改它们的终端环境。似乎都没有对从 [cmd]+[`] 启动的环境做任何事情。我conda activate base在终端也试过了,好像对 apython --version或者 a没有影响which python他们可以使用 运行东西python 3,但这意味着他们需要记住他们与其他 2/3 的学生不同。这对他们来说是另类,对我来说还有更多的工作!学生们做得很好,从他们的外部终端启动东西,但如果环境可以在操作系统之间尽可能一致,它将大大简化事情。虽然他们是完全的初学者,但他们可以运行 shell 脚本。他们目前有一个安装 pip 要求和 vs 代码扩展的软件。是否有使终端与调试环境保持一致的配置?
查看完整描述

3 回答

?
holdtom

TA贡献1805条经验 获得超10个赞

在我看来,最好的做法是创建 Python 虚拟环境(我个人喜欢使用conda环境,尤其是在 Mac 上,你坚持使用不可移除的旧 Python 版本)。然后 VSCode 会自动(在安装了非常强大的 Python 扩展之后)找到你所有的虚拟环境。这样,您将教您的学生处理 Python zoo aka 包不兼容性的良好实践。终端环境设置将与 VSCode 保持一致,不再依赖于任何不需要的别名。显然,虚拟环境是独立于操作系统的,因此您将更加一致并消除不同学生之间不必要的混淆。

virtenvs 的额外好处是,您可以完全根据您的需要创建一个,requirements.txt并通过单击从一个切换到另一个(在终端中它需要两个命令:deactivate-> activate)。

您可以在VSCode 网站上阅读有关如何处理 Python 虚拟环境的更多信息


查看完整回答
反对 回复 2022-03-05
?
开心每一天1111

TA贡献1836条经验 获得超13个赞

鉴于别名只运行一次并且在 中不持久 .bash_profilepython因此以默认解释器而不是预期的 condapython3解释器为目标。

尝试符号链接 conda 的python3可执行文件以捕获python命名空间

ln -sf /Users/$USER/anaconda3/bin/python3 /Users/$USER/anaconda3/bin/python

这将创建或更新符号链接。pip对和使用相同的方法pip3


查看完整回答
反对 回复 2022-03-05
?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

vscode 中的 Python 让您选择将使用哪个解释器来运行脚本。
它在设置下"python.pythonPath",只需将其设置为指向选择的解释器即可。
它也可以基于项目进行设置(这是确保具有虚拟环境的项目将使用该解释器和包执行的方式),您只需在设置窗格中选择工作区并在那里添加所需的 python 解释器。

查看完整回答
反对 回复 2022-03-05
  • 3 回答
  • 0 关注
  • 273 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号