(已解决)vscode如何传入argparse参数来调试/运行python程序

文章目录

      • 前言
      • 调试传入参数
      • 运行传入参数
      • 延申

前言

以前,我都是用Pycharm专业版的,由于其好像在外网的时候,不能够通过VPN来连接内网服务器,我就改用了vscode。改用了之后,遇到一个问题,调试或者运行python程序的时候,怎么给程序传入参数。

通常,很多python项目都会用argparse这个包来统一管理程序运行时所需要的参数,

import argparseparser = argparse.ArgumentParser(description="Deep Gaussian Processes on MNIST")
parser.add_argument("-n", "--num-epochs", default=5, type=int)
parser.add_argument("-t", "--num-iters", default=60, type=int)
parser.add_argument("-b", "--batch-size", default=1000, type=int)
parser.add_argument("-lr", "--learning-rate", default=0.01, type=float)args = parser.parse_args()
print(args.num_epochs)
#结果是默认值5

现在问题来了,我们想要设置num_epochs这个参数为7,看一下程序运行效果好不好,怎么办?

有人说,我直接vscode底部开一个命令行终端,传入这个参数不就行了吗?这样当然可以,但是需要自己写运行命令,我们希望的是直接用vscode可视化的按钮。

有人说,直接把上述代码改成7不就好了吗?这样当然可以,但是好麻烦,要改代码,改多了别把默认值给忘了。

我们想要的是不改代码,每次运行程序,如果传入这个参数,那么这个参数就会被设置为我想要的值,如果不传入这个参数,那么程序就会用默认值5。

Pycharm直接是可以配置的,很方便。但是vscode很不直观,所以有了这一篇文章。

调试传入参数

首先,进入我们要调试的文件,我这是main.py。

点击右上角那个下拉,点击红色框。如果不传入参数,我们一般直接是点击红色框上面这个。
在这里插入图片描述
如下,点击那个设置lauch.json.

在这里插入图片描述
打开之后,这玩意应该是下面这个样子的。

在这里插入图片描述
我们在最后面添加如下行在这里插入图片描述
这样就大功告成了。

配置好了之后,重复上述的步骤,但是不点那个设置了,而是直接点debug。
在这里插入图片描述

这个时候,我们在vscode底部terminal里面可以发现,已经传入了这个参数。

运行传入参数

配置了上述那个lauch.json之后,运行传入参数很简单了。

不能点右上角那个运行按钮,而是点菜单栏那个,而且要点的不是第一个,而是第二个,Run without Debugging。

在这里插入图片描述

成功了,在vscode底部terminal里面可以发现,已经传入了这个参数。

延申

上面我们传入了一个参数,传入多个呢?在那个lauch.json文件里面的args里面继续往后写就行了。

例如

"args": ["--key1","value1","--key2","value2"]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/53617.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常见服务端口号和中文大全

ServiceChinesePortExplainFTP文件传输协议20数据FTP文件传输协议21连接SSH安全外壳协议22SMTP简单邮件传输协议25DNS域名解析协议53DHCP动态主机配置协议67服务端DHCP动态主机配置协议68客户端HTTP超文本传输协议80Kerberos网络认证协议88POP3邮局协议110RPC远程过程调用111IM…

QT编译之后的debug包下运行程序双击运行出现无法定位程序输入点__gxx_personlity_seh0于动态链接库

1.出现这个错误的原因是: 缺少如下文件: 2.解决方法: 在运行程序.exe所在的目录执行:windeployqt untitled.exe(指打包的运行程序) 3.如果执行提示由于找不到qt5core.dll,无法继续执行代码和无法识别win…

MATLAB与Docker Compose:实现微服务API文档的自动化部署与Vue.js集成

在微服务架构中,服务之间的通信和协作是构建复杂应用的关键。随着服务数量的增加,管理和维护这些服务的API文档变得尤为重要。MATLAB作为一个强大的数学计算和可视化工具,其在微服务API文档的自动化部署中扮演着重要角色。本文将详细介绍如何…

pgvector docker版安装;稀疏向量使用;psycopg2 python连接使用

参看: https://cloud.tencent.com/developer/article/2359831 https://hub.docker.com/r/pgvector/pgvector/tags https://github.com/pgvector/pgvector 一、安装 拉取0.7版本 docker pull pgvector/pgvector:0.7.4-pg16运行: docker run --name pgvector -v $(pwd)/dat…

linux StarRocks 安装

一、检查服务器是否支持avx2,如果执行命令显示空,则不支持,那么安装后无法启动BE cat /proc/cpuinfo |grep avx2我的支持显示如下: 二、安装 docker run -p 9030:9030 -p 8030:8030 -p 8040:8040 -p 9001:9000 --privilegedtrue…

随机掉落的项目足迹:Vue3 + wangEditor5富文本编辑器——toolbar.getConfig() 查看工具栏的默认配置

问题引入 小提示:问题引入是一个讲故事的废话环节,各位小伙伴可以直接跳到第二大点:问题解决 我的项目不需要在富文本编辑器中引入添加代码块的功能,于是我寻思在工具栏上把操作代码的菜单删一删 于是我来到官网文档工具栏配置 …

MyBatis 深层次 Map 自动嵌套:解锁数据映射新境界

在 Java 开发的征程中,MyBatis 以其强大的数据库映射功能而备受青睐。其中,深层次 Map 自动嵌套这一特性更是为开发者带来了诸多惊喜与便利。 前提:首先开启自动映射! java和mysql命名规则不一样,每次在mybatis中起别…

动态规划part07

LC 198.打家劫舍 关键:dp[i]的含义是考虑下标i及之前,能偷的最多的钱是多少,那么对于下标i 有 两种情况,偷或不偷 , 这又依赖于前一个房间,和前前个房间是否被偷。若偷 i , 那么dp[i] dp[i-2]…

我的AI工具箱Tauri版-MicrosoftTTS文本转语音

本教程基于自研的AI工具箱Tauri版进行MicrosoftTTS文本转语音服务。 MicrosoftTTS文本转语音服务 是自研的AI工具箱Tauri版中的一款功能模块,专为实现高效的文本转语音操作而设计。通过集成微软TTS服务,用户可以将大量文本自动转换为自然流畅的语音文件…

9/24作业

1. 分文件编译 分什么要分文件编译? 防止主文件过大,不好修改,简化编译流程 1) 分那些文件 头文件:所有需要提前导入的库文件,函数声明 功能函数:所有功能函数的定义 主函数:main函数&…

828华为云征文|使用Flexus X实例集成ES搜索引擎

目录 一、应用场景 1.1 Flexus X实例概述 1.2 ES搜索引擎 二、安装相关服务 2.1 安装Elasticsearch7.17.0 2.2 安装kibana7.17.0 三、开通安全组规则 四、整体感受 4.1 Flexus X实例 4.2 使用感觉 一、应用场景 1.1 Flexus X实例概述 Flexus X实例是华为云推出的一款…

力扣最热一百题——最小覆盖子串

目录 题目链接:76. 最小覆盖子串 - 力扣(LeetCode) 题目描述 示例 提示: 解法一:滑动窗口 1. 初始化 2. 构建 mapT 3. 滑动窗口 4. checkT 方法 5. 返回结果 Java写法: 运行时间 C写法&#x…

Hbase日常运维

1 Hbase日常运维 1.1 监控Hbase运行状况 1.1.1 操作系统 1.1.1.1 IO 群集网络IO,磁盘IO,HDFS IO IO越大说明文件读写操作越多。当IO突然增加时,有可能:1.compact队列较大,集群正在进行大量压缩操作。 2.正在执行…

SkyWalking 简介

SkyWalking是什么 skywalking是一个国产开源框架,2015年由吴晟开源 , 2017年加入Apache孵化器。skywalking是分布式系统的应用 程序性能监视工具,专为微服务、云原生架构和基于容器(Docker、K8s、Mesos)架构而设计。它是一款优秀的 APM(Application Performance Manag…

LLM - 理解 多模态大语言模型(MLLM) 的 对齐微调(Alignment) 与相关技术 (五)

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/142354652 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 多模态大语言模型(MLLM) 系列: 理解 多模态大语言模型(MLLM) 的 发展(…

一步一步优化一套生成式语言模型系统

以下是这套生成式语言模型解决任务的流程图概述: #mermaid-svg-keXg8yGoCyObKDtu {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-keXg8yGoCyObKDtu .error-icon{fill:#552222;}#mermaid-svg-keXg8yGoCyO…

微服务Docker相关指令

1、拉取容器到镜像仓库 docker pull xxx //拉取指令到 镜像仓库 例如 docker pull mysql 、docker pull nginx docker images //查看镜像仓库 2、删除资源 2.1、删除镜像仓库中的资源 docker rmi mysql:latest //删除方式一:格式 docker rmi 要…

解决跨域问题的方法

在前端开发中,跨域问题是一个常见且需要解决的技术难题。跨域问题主要是指浏览器出于安全考虑,限制了来自不同源(协议、域名、端口三者之一不同)的资源访问。以下是一些常用的前端跨域解决方案: 1. CORS(跨…

安卓系统常见问题如native crash,卡顿卡死定位工具命令技巧-android framework实战开发

背景: 有学员朋友近来有问到一些安卓系统开发过程中的一些核心小技能小技巧等,比如native crash在企业里面该如何准确定位具体代码函数,程序卡住,或者长时间没反应,想要看看卡在代码的哪里。针对以上的一些问题&#…

Spark 任务与 Spark Streaming 任务的差异详解

Spark 任务与 Spark Streaming 任务的主要差异源自于两者的应用场景不同:Spark 主要处理静态的大数据集,而 Spark Streaming 处理的是实时流数据。这些差异体现在任务的调度、执行、容错、数据处理模式等方面。 接下来,我们将从底层原理和源…