如何使用VSCode愉快的写Python于调试配置步骤


Posted in Python onApril 06, 2018

在学习Python的过程中,一直没有找到比较趁手的第三方编辑器,用的最多的还是Python自带的编辑器。由于本人用惯了宇宙第一IDE(Visual Studio),所以当Visual Studio Code出现时,心情有点小激动呢。从我的使用经验出发,可以说VSCode用来写Python真的是再合适不过了,你将体验到丝滑的编程体验和无限扩展的可能。而且,如果你的项目是包含多种语言的,比如Web开发,你不必再开多个编辑器和其他工具,因为这一切都可以在VSCode里完成了。

vscode下载地址:https://3water.com/softs/606746.html

搭建环境

在VSCode中搜索扩展Python,就是这货:

 如何使用VSCode愉快的写Python于调试配置步骤

 

安装后,重新加载。上图中我因为已经装过了,所以显示的是禁用、卸载按钮。

下面就可以愉快的和Python玩耍了。是不是超方便?

基本操作

快在VSCode开始你的第一段Python代码吧,Python插件自带的Pylint功能会在你输入的过程中给你自动提示,自动完成,以及错误提示。

 如何使用VSCode愉快的写Python于调试配置步骤

 

这里需要提醒各位PythonER们,VSCode包括VS中,Tab都默认是4个空格。

常用的几个操作快捷键,估计VSer们都能无痛转换:

首先是F1/Ctrl+Shit+P万能键,谁用谁知道Ctrl+P:文件切换Ctrl+空格:自动提示F12/Ctrl+左键:跳转到定义Shift+F12:预览定义Ctrl+G:跳转行号Ctrl+/:注释切换Alt+↑↓:整行上下移动Ctrl+↑↓:编辑器垂直滚动条上下移动,光标不动Ctrl+Backspace/Delete:整词/连续空白删除Ctrl+→←:光标整词移动Ctrl+F查找/Ctrl+Shift+F在文件中查找,这都属于通用的,类似的就不说了啊。

预览定义图:

 如何使用VSCode愉快的写Python于调试配置步骤

 

调试操作

随时随地,F5调试运行。注意,VSCode默认在调试后,会停在第一句,如下图。

调试快捷键与VS基本相同。

F5:调试/继续,F10:单步跳过,F11:单步进入,Shift+F11:跳出。F9:切换断点

 如何使用VSCode愉快的写Python于调试配置步骤

 

左侧Debug窗口显示的从上到下依次是调试所用的模式,变量(局部变量,监视),调用堆栈,断点等。基本上我们需要的功能都在这里了。

 如何使用VSCode愉快的写Python于调试配置步骤

 

有个不太好的设计就是变量、监视这些地方宽度太小,查看一些长的变量不如VS方便。不过好在我们有调试控制台啊,直接敲上变量名就好了。

这里需要提醒一下的是,左上角的下拉选择调试模式中,常用的两个是Python和Integrated Terminal/Console,第一个就是在插件自带的环境中调试运行,第二个就是集成的控制台中。问题是,第一种暂不支持input()输入,所以想调试带input的程序,就选择Integrated Terminal/Console或者External Terminal/Console也是可以的。

Git支持

集成了Git支持,这是很棒的功能,不仅在行首用不同颜色标识添加、删除、修改的行,点击行首色块,还能显示对比。资源管理器中也用不同颜色和标记提示修改的文件。如图:

 如何使用VSCode愉快的写Python于调试配置步骤

 

想要提交时,只需要切换到左侧源代码管理,Commit就行了。

 如何使用VSCode愉快的写Python于调试配置步骤

总结

VSCode小巧、快速,跨平台,界面炫酷,各种扩展,是时候换用新的VSCode了。

这毕竟是微软出品,随便从VisualStudio项目组拉几个人就能甩Sublime、Atom好几条街了(暂不提Vim),让我有一种一旦用起来就停不下来的感觉。

下一篇,计划介绍一下几个好用的VSCode扩展。

Python 相关文章推荐
Python二维码生成库qrcode安装和使用示例
Dec 16 Python
python中函数默认值使用注意点详解
Jun 01 Python
解决Python 遍历字典时删除元素报异常的问题
Sep 11 Python
Python高级用法总结
May 26 Python
Python爬虫框架Scrapy基本用法入门教程
Jul 26 Python
网易2016研发工程师编程题 奖学金(python)
Jun 19 Python
Python 类的魔法属性用法实例分析
Nov 21 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
Dec 10 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
Python sklearn中的.fit与.predict的用法说明
Jun 28 Python
Python配置pip国内镜像源的实现
Aug 20 Python
Python基础数据类型tuple元组的概念与用法
Aug 02 Python
详解django三种文件下载方式
Apr 06 #Python
Anaconda入门使用总结
Apr 05 #Python
致Python初学者 Anaconda入门使用指南完整版
Apr 05 #Python
Windows下anaconda安装第三方包的方法小结(tensorflow、gensim为例)
Apr 05 #Python
Python批量合并有合并单元格的Excel文件详解
Apr 05 #Python
[原创]windows下Anaconda的安装与配置正解(Anaconda入门教程)
Apr 05 #Python
python中返回矩阵的行列方法
Apr 04 #Python
You might like
jQuery中live方法的重复绑定说明
2011/10/21 Javascript
jquery实现智能感知连接外网搜索
2013/05/21 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
ie8下修改input的type属性报错的解决方法
2014/09/16 Javascript
js实现div弹出层的方法
2014/11/20 Javascript
jquery实现简单文字提示效果
2015/12/02 Javascript
探析浏览器执行JavaScript脚本加载与代码执行顺序
2016/01/12 Javascript
深入理解Angular2 模板语法
2016/08/07 Javascript
基于JSON格式数据的简单jQuery幻灯片插件(jquery-slider)
2016/08/10 Javascript
Vue.js每天必学之过渡与动画
2016/09/06 Javascript
从零学习node.js之express入门(六)
2017/02/25 Javascript
JS实现快速比较两个字符串中包含有相同数字的方法
2017/09/11 Javascript
原生JS实现Ajax跨域请求flask响应内容
2017/10/24 Javascript
node.js爬取中关村的在线电瓶车信息
2018/11/13 Javascript
Three.js实现简单3D房间布局
2018/12/30 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
详解auto-vue-file:一个自动创建vue组件的包
2019/04/26 Javascript
javascript面向对象创建对象的方式小结
2019/07/29 Javascript
viewer.js一个强大的基于jQuery的图像查看插件(支持旋转、缩放)
2020/04/01 jQuery
Element实现表格嵌套、多个表格共用一个表头的方法
2020/05/09 Javascript
JS sort排序详细使用方法示例解析
2020/09/27 Javascript
python中合并两个文本文件并按照姓名首字母排序的例子
2014/04/25 Python
用Python中的__slots__缓存资源以节省内存开销的方法
2015/04/02 Python
Python随机生成数据后插入到PostgreSQL
2016/07/28 Python
Pycharm远程调试openstack的方法
2017/11/21 Python
PyQt5每天必学之组合框
2018/04/20 Python
python 快速把超大txt文件转存为csv的实例
2018/10/26 Python
python生成九宫格图片
2018/11/19 Python
Python 随机按键模拟2小时
2020/12/30 Python
利用CSS3的3D效果制作正方体
2020/03/10 HTML / CSS
深入浅析HTML5中的article和section的区别
2018/05/15 HTML / CSS
数据库专业英语
2012/11/30 面试题
三关爱志愿服务活动方案
2014/08/17 职场文书
纪律委员竞选稿
2015/11/19 职场文书
星际争霸:毕姥爷vs解冻03
2022/04/01 星际争霸
Mysql中常用的join连接方式
2022/05/11 MySQL