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

我正在教一个初学者 python 课程,环境是 Anaconda、VS Code 和 git(加上一些额外的 a requirements.txt)。


对于 windows 学生来说,这运行得很好,但是 mac 学生有一个现有的 python (2.7) 可以应对。


windows学生(即他们有一台windows计算机),他们调试时的环境与他们的控制台环境相匹配。然而,mac 学生似乎被锁定在他们的 2.7 环境中。


我已经尝试过别名,如建议here和here


alias 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 代码扩展的软件。


是否有使终端与调试环境保持一致的配置?


眼眸繁星
浏览 274回答 3
3回答

holdtom

在我看来,最好的做法是创建 Python 虚拟环境(我个人喜欢使用conda环境,尤其是在 Mac 上,你坚持使用不可移除的旧 Python 版本)。然后 VSCode 会自动(在安装了非常强大的 Python 扩展之后)找到你所有的虚拟环境。这样,您将教您的学生处理 Python zoo aka 包不兼容性的良好实践。终端环境设置将与 VSCode 保持一致,不再依赖于任何不需要的别名。显然,虚拟环境是独立于操作系统的,因此您将更加一致并消除不同学生之间不必要的混淆。virtenvs 的额外好处是,您可以完全根据您的需要创建一个,requirements.txt并通过单击从一个切换到另一个(在终端中它需要两个命令:deactivate-> activate)。您可以在VSCode 网站上阅读有关如何处理 Python 虚拟环境的更多信息

开心每一天1111

鉴于别名只运行一次并且在 中不持久 .bash_profile,python因此以默认解释器而不是预期的 condapython3解释器为目标。尝试符号链接 conda 的python3可执行文件以捕获python命名空间ln -sf /Users/$USER/anaconda3/bin/python3 /Users/$USER/anaconda3/bin/python这将创建或更新符号链接。pip对和使用相同的方法pip3。

摇曳的蔷薇

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

相关分类

Python