目前来说搭建 Python 开发环境最方便的就是 Anaconda 了,不管是什么系统都很方便,而且其最突出的特性是可以配置多种环境,也就是说不管你需要什么特定版本的 Python,Anaconda 都可以帮你轻松配置出来,而且各个环境之间相互隔离,互不影响,确实是 Python 开发必备的大杀器。
使用 Anoconda 配置好了开发环境后,还需要一个用来编写和调试 Python 程序的地方,当然可以使用 Jupyter Notebook 或者文档编辑器 Sublime Text 等甚至 PyCharm 这样全能的 IDE。在这里,记录一下使用 Anoconda 搭建环境,使用 VS Code 来编写调试 Python 的过程。
Anoconda 安装
Anoconda 的安装非常简单,在这里暂时不做具体介绍,可以参考官网即可。需要注意的是可以一路默认操作。
VS Code 安装
同样参考官网,下载安装即可。需要注意的是官网( https://code.visualstudio.com/download )的下载链接有三个,我们选择 System Installer 下载即可,或者直接在首页( https://code.visualstudio.com/ )点击 Download for Windows Stable Build。System Installer 和 User Installer 的区别在于前者会为计算机所有用户安装 VS Code,并且在后续使用的时候不会碰到各种麻烦的权限问题。此外,安装过程中一路默认即可,特别是添加到 path 选项,方便以后 VS Code 的使用。
VS Code 中配置 Python
在 VS Code 中使用 Python 是非常简单、有趣和高效的,只需要使用 Microsoft Python extension 扩展。这个扩展可以使 VS Code 成为一个优秀的 IDE,并且可以在任何带有各种 Python 解释器的操作系统上工作。它利用 VS Code 的强大功能来提供代码自动补全、智能感知、调试和单元测试,以及在 Python 环境 (包括虚拟环境和 conda 环境) 之间轻松切换的能力。
安装 Microsoft Python extension 插件
打开 VS Code 的插件搜索安装栏,输入 Python,安装此插件,注意插件的作者是 Microsoft。
配置与选择 Python 解释器
在工作区中添加准备编写和调试 Python 程序的文件夹(如在 Win10 中的桌面建立了 pytest 的文件夹)。鼠标选中工作区 pytest 文件夹后按 F1(或者 Ctrl+Shift+P)键打开命令面板,输入 Python: Select Interpreter,并选择需要的 Python 解释器环境。选择完成后,在 VS Code 界面左下角的 status bar 上会显示选定的解释器,之后也可以通过单击此处切换解释器。
自动补全与联想
VS Code 的 IntelliSense 提供智能感知和自动补全,包括标准的 Python 模块以及你自己在开发环境中安装的各种包。同样还支持对象类型的方法补全。
错误提示(Linting)
Linting analyzes your Python code for potential errors, making it easy to navigate to and correct different problems.
Linting 是一个用来检查代码可能存在潜在错误的工具,可以将其启用。如果 VS Code 提示以下信息,则说明需要先安装 Pylint。
Pylint 的安装建议使用 Anoconda 的终端管理工具来安装,打开 Anoconda Navigator,切换到对应的环境,打开 terminal,输入 conda install pylint 即可。
安装完毕后,回到 VS Code 中,F1 调用命令面板,输入 Python: Select Linter 来选择 Pylint 即可。
运行 Python 程序
在编写好的文件任意位置右键,即可选择运行程序:
除此以外,还可以选择部分行的代码,右击选择 “运行选定内容”,或者在命令面板中输入 Python: Start REPL 打开一个交互式终端进行代码运行。
配置并运行 debugger
首先,我们在第二行行首单击或者通过 F9 设置鼠标停留行为断点:
由于是第一次开启调试,会跳出选择框,让我们选择需要使用的 Debug 配置,此时,我们选择第一项 Python File,表示使用当前选择的 Python 解释器运行编辑器中当前文件。
然后就可以看到熟悉的 Debug 界面,可以逐步逐行进行调试:
同时,在右下方,点击“调试控制台”,可以输入变量名等 Python 语句,进行进一步的调试。
参考资料:
https://code.visualstudio.com/docs/languages/python
https://code.visualstudio.com/docs/python/python-tutorial
https://code.visualstudio.com/docs/python/linting