Windows平台下使用vs code来调试python代码(2)
背景:上篇文章我们介绍了怎么搭建相关的环境,文章链接:https://www.cnblogs.com/yahuian/p/10507467.html,这篇文章来介绍怎么调试我们的程序。
1.Debugging in vs code
重要:英文官方文档链接:https://code.visualstudio.com/docs/editor/debugging,我依旧建议你直接看英文文档。
在vs code中debug分为两种,我们来看看官方的描述:
1.built-in debugging support:
VS Code has built-in debugging support for the Node.js runtime and can debug JavaScript, TypeScript, and any other language that gets transpiled to JavaScript.
2.Debugger extensions
For debugging other languages and runtimes (including PHP, Ruby, Go, C#, Python, C++, Powershell and many others), look for
Debuggersextensions in our VS Code Marketplace or click on Install Additional Debuggers in the top-level Debug menu.
咱们现在来看看怎么调试我们的python代码。
2.Debugging python in vs code
重要:
1.英文官方快速入门教程:https://code.visualstudio.com/docs/python/python-tutorial#_configure-and-run-the-debugger
2.完整的debug配置教程:https://code.visualstudio.com/docs/python/debugging
我这儿只介绍快速入门教程,完整的教程请参考官方文档,我们首先用vs code打开我们上次的hello项目文件,执行以下操作:
(1)点击左边的debug按钮,会进入一个新的页面
(2)点击左上角的齿轮按钮,系统会自动生成一个launch.json的文件,这个文件就是我们调试的配置文件,当前我们可以不管里面的内容具体表示什么含义。
(3)点击绿色三角形旁边的那个选择框,选择我们刚才生成的那个配置文件(Python: Current File (Integrated Terminal))
至此我们就完成了debug配置文件的设置,刚才的操作如下图所示:

现在你的项目中文件如下:

现在让我们来加断点,将鼠标移动到如下图所示的哪一列位置,你会发现隐约会出现一个小红点,点击那一列的某一行,就可以在相应的哪行加上断点,程序在执行到这行时会停下来,你可以在左边的那一栏看看中间变量的值,以及程序中的某些调用,方便我们分析bug的位置。

当我们添加好断点后,点击左上角的绿色箭头(即下图的一号框),此时程序会在调试模式下运行:在2号框里面你可以控制程序continue,step over,step into,step out,restart,stop。(具体每个按钮的作用是什么,大家试一试就知道了),在3号框里面你会看到当前已经执行过的代码的一些详细情况。

好了,至此你已经学会了简单的调试,如果你想深入的了解launch.json文件中每个字段的具体含义,请自己参考官方文档。下一篇我们讲讲关于python的包管理方式——虚拟环境。
结尾:有同学问我你这用vs code写个python这个麻烦,配这个配哪个,还不如用专业的IDE来的舒服。我以前也是这个想的,但是自从我自己折腾了一趟后我发现有时候IDE把一些东西给你安排的明明白白后,你可能就不会接触到一些和CLI相关的东西,而在你自己折腾的过程中,可能会学到一些新的东西。嘿嘿,磨刀不误砍柴工嘛!
Windows平台下使用vs code来调试python代码(2)的更多相关文章
- Windows平台下使用vs code搭建python3环境(1)
前言:最近几周在使用python开发的过程中,碰到了好多坑,由于以前使用visual studio 2015习惯了,导致刚开始搭建python开发环境以及管理各种包的时候有点不习惯,再加上python ...
- Windows平台下如何在C#中调用Python
最近迷上了Python,发现它能够做很多C#无法完成的事情,比如,调用CMD或者在CMD中执行一个exe文件命令行并获得输出的结果.过程简单,处理起来也非常方便,但如果要用C#调用Python文件呢, ...
- windows平台下基于VisualStudio的Clang安装和配置
LLVM 是一个开源的编译器架构,它已经被成功应用到多个应用领域.Clang是 LLVM 的一个编译器前端,它目前支持 C, C++, Objective-C 以及 Objective-C++ 等编程 ...
- [转]Windows平台下安装Hadoop
1.安装JDK1.6或更高版本 官网下载JDK,安装时注意,最好不要安装到带有空格的路径名下,例如:Programe Files,否则在配置Hadoop的配置文件时会找不到JDK(按相关说法,配置文件 ...
- windows平台下基于QT和OpenCV搭建图像处理平台
在之前的博客中,已经分别比较详细地阐述了"windows平台下基于VS和OpenCV"以及"Linux平台下基于QT和OpenCV"搭建图像处理框架,并 ...
- Windows平台下的内存泄漏检测
在C/C++中内存泄漏是一个不可避免的问题,很多新手甚至有许多老手也会犯这样的错误,下面说明一下在windows平台下如何检测内存泄漏. 在windows平台下内存泄漏检测的原理大致如下. 1. 在分 ...
- 不同WINDOWS平台下磁盘逻辑扇区的直接读写
不同WINDOWS平台下磁盘逻辑扇区的直接读写 关键字:VWIN32.中断.DeviceIoControl 一.概述 在DOS操作系统下,通过BIOS的INT13.DOS的INT25(绝对读).INT ...
- Windows平台下如何使用node.js显示系统盘符
本文地址: http://www.cnblogs.com/blackmanba/articles/windows-nodejs-show-system-letter.html或者http://fork ...
- Windows平台下利用APM来做负载均衡方案 - 负载均衡(下)
概述 我们在上一篇Windows平台分布式架构实践 - 负载均衡中讨论了Windows平台下通过NLB(Network Load Balancer) 来实现网站的负载均衡,并且通过压力测试演示了它的效 ...
随机推荐
- Java基础--常用API--日期相关API
一.java.util.Date 1.只用于显示系统时间,其大部分操作由Calendar代替. 格林威治时间(GMT):指的是1970年1月1日0时,不同地区有时间差. 默认输出格式:星期.月.日.时 ...
- Docker 安装部署RabbitMQ
获查询镜像 docker search rabbitmq:management 可以看到如下结果: 获取镜像 docker pull rabbitmq:management 运行镜像 docker r ...
- [Android]进程间通信的方法
一.管道 管道是进程间通信中最古老的方式,它包括 无名管道 和 有名管道两种,前者用于父进程和子进程间的通信,后者用于运行于同一台机器上的任意两个进程间的通信. 无名管道由pipe()函数创建. #i ...
- 【NOI2014】起床困难综合症 贪心
从高到低按位贪心,讨论一下初始0或1,分别暴力算出结果是什么 如果一开始0就能得1当然直接ans垒起来 如果1能得1而且当前m够用,那也垒起来,同时m减掉 否则gg 2min的代码 #include ...
- oracle备份imp命令大全
oracle中imp命令详细解释 Oracle的导入有用程序(Import utility)同意从数据库提取数据,而且将数据写入操作系统文件.imp使用的基本格式:imp[username[/pass ...
- Eclipse 在桌面创建快捷方式打开工作区
创建eclipse快捷的方式,并Copy到桌面. 打开快捷方式的属性窗口,在[目标]栏,增加参数 –data 你的工作区目录
- js动态更换img的src问题
在本地开发测试过程中,通过js动态更换img的src没有问题,图片正常切换,但是放在服务器上后测试发现,图片不显示,解决方法为:在对应onclick事件执行切换图片的js函数后加上一个return f ...
- 开机报错 the connected AC adapter has a lower wattage than the recommended model which was shipped with the system。
机型:联想Thinkpad T410 报错场景:在电脑插上电源充电情况下开机,会自动进入bios setup utility提示你需要重新设置日期时间.date/time 报错提示:The conne ...
- 1g免费空间永久使用
云邦互联免费空间(免备案,无广告) [1G免费全能空间,免备案,无广告] 1G全能空间 + 100M数据库(Mysql 5.5 / SQL Server 2005) 支持的脚本:ASP.PHP(5.2 ...
- JavaScript笔记2
1.浮点数在运算过程中会产生误差,因为计算机无法精确表示无限循环小数. 要比较两个浮点数是否相等,只能计算它们之差的绝对值,看是否小于某个阈值(某个可接受的范围):Math.abs(1 / 3 - ( ...