vscode python remote debug极速入门
本文适用范围
主要适用于debug python 程序,尤其是深度学习刚入门需要使用remote 连接到linux进行程序运行,想调试一下的同学。
当然非深度学习也可以参考食用本文哈哈哈。
极速入门版
提前准备:代码仓库已经拉取到linux上面,且已经知道运行的方式。
比如:
项目的启动命令为:python pretrain.py --dataset mini_imagenet --data_path /home/yq/math/miniImageNet --model ResNet12
1.打断点:在你想程序开始debug的地方打上断点

2.修改launch.json文件,配置启动的命令:


完成的代码:
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
// python pretrain.py --dataset mini_imagenet --data_path /home/yq/math/miniImageNet --model ResNet12
{ //python train.py configs/path_to_your_config
"name": "vil100-pld-orgin", //name 可以自己取
"type": "python",
"request": "launch",
"program": "/home/yq/math/DeepBDC-main/pretrain.py",
"console": "integratedTerminal",
"cwd": "/home/yq/math/DeepBDC-main", // current work dir
"args": [
"--dataset", "mini_imagenet","--data_path","/home/yq/math/miniImageNet","--model",
"ResNet12",
],
"justMyCode": true
},
]
}
说一下其中关键参数吧:
name:这次debug项目的名字,可以任意取
program:要启动的主程序,个人习惯写绝对路径,好像相对路径也是可以的
cwd:当前工作目录(current work directory),因为代码项目中可能会涉及到使用相对路径,如果不改工作目录的话就可能会出现问题,一般来说这个就改到main.py文件所在的目录,或者按照项目的README.md文件中的目录写即可。
args:附带的参数,每个参数用,隔开。
3.启动:点击绿色三角即可

4.程序就会在断点处停下

这时候就可以在DEBUG CONSOLE输入需要得到的变量的值,如下:

注意:这时候修改了程序的话需要重新启动debug才会按照你修改之后的程序运行,不重新启动的话运行逻辑还是修改之前的
完整版本
完整的debug功能更加强大,甚至可以监听远程窗口,但是目前并没有涉及到使用,具体见官方文档:
Debugging configurations for Python apps in Visual Studio Code
我的博客园:https://www.cnblogs.com/swx123
我的github(代码一般都放在这里):https://github.com/578223592
vscode python remote debug极速入门的更多相关文章
- vscode local attach 和 remote debug
VSCode是MS推出的一款免费的开源并跨平台的轻量级代码编辑器,内置Git和Debug等常用功能,强大的插件扩展功能以及简单的配置几乎可以打造成任意编程语言的IDE.本文简单聊一下其本地attach ...
- 多本Python极速入门最佳书籍,不可错过的Python学习资料!
Python作为现在很热门的一门编程语言,介于Python的友好,许多的初学者都将其作为首选,为了帮助大家更好的学习Python,我筛选了2年内优秀的python书籍,个别经典的书籍扩展到5年内. ...
- 《Python黑客编程之极速入门》正式开课
玄魂 玄魂工作室 今天 之前开启了一个<Python黑客编程>的系列,后来中断了,内容当时设置的比较宽,不太适合入门.现在将其拆分成两个系列<Python黑客编程之极速入门>和 ...
- vscode如何配置debug,python正则表达式如何匹配括号,关于python如何导入自定义模块
关于vscode如何配置debug的问题: 1.下载安装好python,并且配置好 环境变量 2.https://www.cnblogs.com/asce/p/11600904.html 3.严格按照 ...
- Python 极速入门指南
前言 转载于本人博客. 面向有编程经验者的极速入门指南. 大部分内容简化于 W3School,翻译不一定准确,因此标注了英文. 包括代码一共两万字符左右,预计阅读时间一小时. 目前我的博客长文显示效果 ...
- windows 10使用vscode进行远程代码开发 | tutorial to use vscode for remote development using ssh on windows
本文首发于个人博客https://kezunlin.me/post/c93b6ba6/,欢迎阅读最新内容! tutorial to use vscode for remote development ...
- Python云端系统开发入门——框架基础
Django框架基础 这是我学习北京理工大学嵩天老师的<Python云端系统开发入门>课程的笔记,在此我特别感谢老师的精彩讲解和对我的引导. 1.Django简介与安装 Django是一个 ...
- [转]Nginx基本功能极速入门
原文链接:Nginx基本功能极速入门 | 叉叉哥的BLOG 本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理.废话不多,直接开始. 1.静态HTTP服务器 ...
- How to remote debug neutron
First of all, I will assume that you know how to use pydevd to remote debug normal python program. I ...
- 60 分钟极速入门 PyTorch
2017 年初,Facebook 在机器学习和科学计算工具 Torch 的基础上,针对 Python 语言发布了一个全新的机器学习工具包 PyTorch. 因其在灵活性.易用性.速度方面的优秀表现,经 ...
随机推荐
- Codeforces Round 988 (Div. 3)
Codeforces Round 988 (Div. 3) 总结 A 没啥好说的,用桶存出现次数. #include <iostream> #include <cstdio> ...
- How to disable ipv6 in ubuntu
To disable ipv6, you have to open /etc/sysctl.conf using any text editor and insert the following li ...
- 高性能计算-gemm-openmp效率测试(10)
1. 目标 设计一个程序,使用OpenMP并行化实现矩阵乘法.给定两个矩阵 A 和 B,矩阵大小均为1024*1024,你的任务是计算它们的乘积 C. 要求: (1).使用循环结构体的知识点,包括fo ...
- Chrome控制台中network底部概要参数
概要参数 1.requests => 资源请求总数: 2.transferred => 网络加载资源大小: 3.resources => 页面所有资源总大小(包含网络资源.浏览器缓存 ...
- Think in Java之构造器的真正调用顺序
构造器是OOP的重要组成部分,很多人认为它很容易.只不过是new了一个对象而已.而think in java的作者却告诉我们,其实这并不容易.先看下面这个例子.在你没看结果之前,你觉得你的答案是对的么 ...
- python多版本管理软件pyenv
我们在平时的项目开发或者学习中,有可能使用不同的Python版本,大家都知道Python的版本非常多,如果我们把需要的不同版本的Python都下载到服务器上,管理起来会非常困难,多版本并存又容易互相干 ...
- 2019-2020 ACM-ICPC Brazil Subregional Programming Contest
D. Denouncing Mafia 给定一颗树,然后给定\(k\)个起点,对于每个起点来说,从该点到根节点的一条链都会被染色,求最多有几个点会被染色 \(3 \leq n \leq 1e5, 1 ...
- synchronized 关键字测试
对象上有关键字 package com.study.juc.sync; import java.util.concurrent.TimeUnit; public class Test1 { publi ...
- JavaScript ES6基础
1.let声明 1.let不像var有变量声明提升,未声明直接使用会报错 console.log(a); //undefined var a; console.log(b); //报错 let b; ...
- 鸿蒙应用开发从入门到入行 - 篇4:层叠布局、自定义组件、ForEach
第四篇 - 层叠布局.自定义组件.ForEach循环生成组件 导读:在本篇文章里,您将掌握层叠布局.自定义组件的用法,特别是自定义组件将来的开发中必然会用,其中应该特别关注自定义组件的一些规范与装饰器 ...