Ubuntu下VSCode的Python运行调试环境的配置

本来按照各位大神的推荐,Linux系统下Python最好的编辑器是Vim。我也尝试去配置Vim的Python开发环境,但是作为新手的我怎么也配置不好,无奈之下只能退而求其次,选择了还不错的VSCode。总的来看,VSCode 还是非常不错的编辑器,可以使用扩展实现对大多数语言的支持(语法高亮,自动提示,调试等),并且配置相对而言简单很多。我把自己在使用VSCode运行Python的过程中碰到的问题以及解决办法记录下来,供日后可查。

说明:
操作系统:Ubuntu 16.04
VSCode:1.3.1
Python插件:0.3.21

Python运行环境配置

1. 安装插件

安装完VSCode之后,看到的界面如下:
这里写图片描述
鼠标点击1 进入扩展管理,在2 处输入Python 它就会自动搜索与Python有关的插件。初始环境下,VSCode不具备Python的语法支持,需要安装插件。在这里我推荐的插件是3 处的 Python,其项目地址在这里。点击安装之后,它就会自动下载并安装插件(需要联网哦),安装完成后提示重启VSCode生效。

在Ubuntu命令行下启动VSCode的命令是 code 项目目录 或者 code 文件名 。前者是打开一个目录(通常是你的Python项目文件夹),后者是直接打开一个文件。强烈建议打开项目目录,一方面可以直观看到项目文件的组织方式,另一方面在后面运行和调试配置的时候必须是针对项目,不能是对单个文件。

2. 运行配置

Ubuntu下VSCode运行Python的快捷键是Ctrl+Shift+B 。如下图所示:
这里写图片描述

由于还没有对这个项目进行配置,所以会提示红框中的信息。点击配置任务运行程序 , 在下拉列表中选择Others 。这个时候出现一个新的配置文件,这是Python插件自动生成的,如下:
这里写图片描述

在目录结构里(1 中),多出里一个.vscode 的文件夹,VSCode所有关于此项目的配置文件都会自动存放在这个目录下。tasks.json 是运行配置文件,我们需要修改两个地方:"command": "python""args": ["${file}"] 。配置完后保存,然后转到你的.py 文件,使用快捷键Ctrl+Shift+B 就可以看到输出结果了。

3. 调试配置

查看->调试 即可调出调试界面(可以先打断点哦),如图:
这里写图片描述

点击途中箭头指向的配置按钮,然后选择Python ,生成一个launch.json 的文件,如下图:
这里写图片描述

删除途中红框中的那一行代码,保存文件,即可。切换到.py 文件下,点击绿色箭头开始运行调试,如下图:
这里写图片描述

红框标出的是调试的方式,各位可以自己试验。

Python虚拟环境运行调试配置

Ubuntu 16.04 默认安装2.7和3.5两个版本的Python,为了避免冲突,创建Python的虚拟环境特别有必要。它的好处是,你可以为每一个Python项目单独创建一个虚拟环境,并且可以指定这个虚拟环境使用的Python版本。在这个虚拟环境中安装各种Python库都是独立的(只是适应与这个虚拟环境,不会对其他虚拟环境产生影响,也不会对主环境有影响)。当你完成项目,或者在这个虚拟环境中出现不可逆的错误,你完全可以删除这个虚拟环境(一个虚拟环境实际上就是一个目录),一切都会是原来的样子。

网上很多关于虚拟环境的教程,这里就不再赘述。推荐一篇教程

需要注意的是,你应该先在命令行激活你的虚拟环境,然后再用VSCode打开你的项目目录(项目目录放在什么地方理论上是无关紧要的),这样VSCode就会针对你的虚拟环境指定的Python版本进行配置。

在虚拟环境下运行和配置Python项目的方法同上,唯一需要注意的是,如果你想在虚拟环境下调试Python,那么你的项目文件目录不能在虚拟环境目录之下。例如,如果你的虚拟环境目录是/home/username/env ,那么你的项目目录不能是/home/username/env/project 或者更深的子目录。否则,你在调试的时候会直接得到调试结果,并不允许你单步调试。折腾了很久,我也是在无意中发现这个问题,不知道是不是这个插件的一个Bug。

  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值