Jenkins定时构建自动化(四):Python 的 argparse 模块

目录

一、主要功能和用途

二、核心类和方法

三、总结

四、argparse模块示例


Jenkins定时构建自动化(一):Jenkins下载安装配置-CSDN博客

Jenkins定时构建自动化(二):Jenkins的定时构建-CSDN博客

Jenkins定时构建自动化(三):手动+定时构建执行本地+运行代码不需要传参-CSDN博客

注:下面这段内容如果无法理解没关系,后期可以慢慢学习,无法理解直接看下面的实例就好,照搬使用不耽误。

        argparse 是 Python 标准库中用于解析命令行参数和生成帮助信息的模块。它可以帮助开发者轻松地编写用户友好的命令行界面,处理用户输入的参数,并提供详细的帮助文档。

一、主要功能和用途

  • 定义参数:

        使用 argparse.ArgumentParser 类来创建一个参数解析器对象。

        通过调用 add_argument 方法添加各种命令行参数及其属性,例如参数名称、类型、是否必需、帮助信息等。

  • 解析和验证参数:

        调用解析器的 parse_args 方法来解析命令行参数。

        argparse 会自动处理参数类型转换和验证,如果参数不符合预期的类型或选项,会生成错误消息。

  • 生成帮助信息:

        自动根据 add_argument 方法的设置生成帮助信息,包括参数的描述、使用示例等。

        通过在命令行输入 -h 或 --help 可以显示生成的帮助信息,帮助用户了解如何使用程序和参数。

二、核心类和方法

  •  argparse.ArgumentParser:

        这是参数解析器的核心类。通过创建该类的实例来定义命令行参数。

        可以指定程序的描述信息、帮助信息等。

  • add_argument 方法:

        add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest]):

        name or flags:参数名称或选项。

        action:参数动作,例如存储值或统计参数出现次数。

        nargs:参数的个数,例如可接受多个值。

        const:某些动作和 nargs 之外需要的常数。

        default:如果未传递此参数,则使用的值。

        type:要转换的命令行参数的类型。

        choices:可接受的值的列表或范围。

        required:是否必须提供此参数。

        help:关于参数的简短描述。

        metavar:在帮助文本中使用的参数名称。

        dest:要存储结果的属性名称。

三、总结

        argparse 模块为 Python 程序提供了强大的命令行参数处理功能,能够有效地管理用户输入,提供友好的用户界面和错误处理,是开发命令行工具和脚本的重要工具之一。通过合理使用 argparse,可以使得程序更易于使用和维护,同时提高用户体验。

四、argparse模块示例

import os
import argparseclass Jenkins_Database:def __init__(self):self.connection = Nonedef jenkins_run_data(self):"""jenkins运行数据:return:"""parser = argparse.ArgumentParser(description='Process some parameters.')parser.add_argument('--parameter_1', type=str, required=True, help='参数1')  # 字符串  strparser.add_argument('--parameter_2', type=int, required=True, help='参数2')  # 整型    intparser.add_argument('--parameter_3', type=str, required=True, help='参数3')parser.add_argument('--parameter_4', type=int, required=True, help='参数4')args = parser.parse_args()# 拼接成 values_data 字典data = {'参数1': args.parameter_1,'参数2': args.parameter_2,'参数3': args.parameter_3,'参数4': args.parameter_4,}return values_dataif __name__ == "__main__":jenkins_db = Jenkins_Database()  # 创建 Jenkins_Database 的实例values_data = jenkins_db.jenkins_run_data()  # 通过实例调用方法

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

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

相关文章

[FreeRTOS 基础知识] 信号量 概念

文章目录 信号量定义信号量特性 信号量定义 信号量是一个抽象的数据类型,通常包含一个整数值以及一个等待该值变为正数的任务列表(也称为等待队列)。信号量的整数值代表了系统中某种资源的可用数量。 在操作系统中信号量用于控制对共享资源访…

提升办公效率的利器—OnlyOffice文档8.1深度体验

目录 1. 前言 2. 安装 3. 基本使用 3.1 文档编辑 3.2 表格处理 3.3 演示文稿 4. 个人评价 5. 总结 1. 前言 在当今信息化时代,办公软件已经成为我们日常工作中不可或缺的工具。无论是撰写文档、处理数据,还是制作演示文稿,办公软件的…

MySQL MVCC详解

目录 前言 MVCC实现原理 UndoLog版本链 ReadView MVCC是否可以解决不可重复读与幻读 隔离级别 READ UNCOMMITTED - 读未提交与脏读 READ COMMITTED - 读已提交与不可重复读 REPEATABLE READ - 可重复读与幻读 SERIALIZABLE - 串行化 小结 前言 为了提高数据库并发能力…

GNSS接收机的工作原理

GNSS接收机的工作原理如下: 信号接收:GNSS接收机通过天线接收来自卫星导航系统的信号,这些信号包含卫星的位置、时间和健康状态等信息。 信号处理:接收的信号首先经过前置放大器放大,然后经过滤波器滤除噪声。接收机会…

邂逅Three.js探秘图形世界之美

可能了解过three.js等大型的3D 图形库同学都知道啊,学习3D技术都需要有图形学、线性代数、webgl等基础知识,以前读书学的线性代数足够扎实的话听这节课也会更容易理解,这是shader课程,希望能帮助你理解着色器,也面向第…

图象去噪1-使用中值滤波与均值滤波

1、中值滤波 使用中值滤波去除图像的异常像素点,使用cv2.cv2.medianBlur(img, 3)表示再图像在中值滤波窗口3*3的范围内,从下到大排序,将当前值替换为排序中值(如下图所示)将56替换为(56,66,90,…

JeecgFlow并行网关概念及案例演示

概念讲解 并行网关能够在一个流程中用于进行并发建模处理,将单条线路拆分成多条路径并行执行,或者将多条路径合并处理。 在一个流程模型中引入并发最直接的网关就是并行网关,它基于进入和外出顺序流,有分支和合并两种行为&#xf…

想拥有一个独一无二的AI人物?Lora炼丹训练模型教程来啦

之前答应过大家放出来的Lora本地训练教程,终于写好啦。 会训练lora,代表着你可以生成属于你的独一无二的角色。 你可以让这个角色在各种不同背景的地方出现,可以让它摆出各种姿势,满足你的无限幻想。 还有的商家,用…

10分钟安装好torch的GPU版本(Windows)

pytorch-gpu 1. 确定cuda版本2. 确定Python版本3 开始下载-cu118-cp383.1 下载cuda3.2 下载torchvision 4.下载好了5.开始安装6. 开始验证 1. 确定cuda版本 nvcc -V 版本为11.8 , 一会下载的版本为cu118 2. 确定Python版本 确定python版本为为3.8,一会下载为cp38 3 …

Java包介绍

今天看jdk文档,顺便写一下java几个包的作用。 java.applet 主要用于创建java applet小应用程序,可以嵌入到网页中能够呈现出特殊的效果,现在基本已经被废弃,很少使用。 java.awt AWT 是Abstract Window ToolKit (抽象窗口工具包…

猫头虎分享已解决Bug: Illegal State Exception: java.lang.IllegalStateException

猫头虎分享已解决Bug: Illegal State Exception: java.lang.IllegalStateException 🐯 摘要 📄 大家好,我是猫头虎,一名专注于后端技术的博主。在日常开发中,我们经常会遇到各种各样的Bug,其中Illegal St…

Python基础教程(二十七):urllib模块

💝💝💝首先,欢迎各位来到我的博客,很高兴能够在这里和您见面!希望您在这里不仅可以有所收获,同时也能感受到一份轻松欢乐的氛围,祝你生活愉快! 💝&#x1f49…

ssl证书90天过期?保姆级教程——使用acme.sh实现证书的自动续期

腾讯云相关文档相关参考-有的点不准确 前言 最近https到期了,想着手动更新一下https证书,结果发现证书现在的有效期只有90天,于是想找到一个自动更新证书的工具,发现了acme.sh,但是网上的文章质量参差不齐&#xff0…

数据结构——二分算法

二分查找 1. 在排序数组中查找元素的第一个和最后一个位置 代码实现&#xff1a; /*** Note: The returned array must be malloced, assume caller calls free().*/int binarySearch(int *nums, int numsSize, int target) {int l 0, r numsSize - 1; while (l <…

【面试题】前端 移动端自适应?_前端移动端适配面试题

设备像素比 设备像素比 (DevicePixelRatio) 指的是设备物理像素和逻辑像素的比例 。比如 iPhone6 的 DPR 是2。 设备像素比 物理像素 / 逻辑像素。可通过 window.devicePixelRatio 获取&#xff0c;CSS 媒体查询代码如下 media (-webkit-min-device-pixel-ratio: 3), (min-…

6.折半查找

折半查找 基本思路在有序表中,取中间元素作为比较对象,若给定值与中间元素的要查找的数相等,则查找成功;若给定值小于中间元素的要查找的数,则在中间元素的左半区继续查找;若给定值大于中间元素的要查找的数,则在中间元素的右半区继续查找。不断重复上述查找过 程,直到查找成功…

揭秘循环购:消费即收益,如何助力商家月销百万?

大家好&#xff0c;我是吴军&#xff0c;今天要和大家分享一种颠覆性的商业模式——循环购。你是否听说过“消费1000送2000”这样的促销活动&#xff1f;是不是觉得太不可思议&#xff0c;商家岂不是在“送钱”&#xff1f;别急&#xff0c;让我为你揭开这背后的秘密。 循环购&…

C和C++实现stack的对比

本篇文章&#xff0c;我们将对比C语言和C实现栈的不同来体会C的魅力&#xff01; 1.栈的介绍 栈&#xff08;Stack&#xff09;是一种常见的数据结构&#xff0c;它是一种特殊的线性表&#xff0c;只允许在一端进行数据的插入和删除操作。这一端通常被称为栈顶&#xff08;Top…

路由器ARP和ARP-proxy(华为)

#交换设备 路由器ARP和ARP-proxy(华为) 当一个广播域中的主机想要访问另外一个广播域的主机时&#xff0c;会广播ARP报文&#xff0c;询问目标IP地址所对应的MAC地址&#xff0c;默认情况下&#xff0c;arp记录是设备自动生成的&#xff0c;但是这样会容易受到ARP欺骗攻击&am…

python实训day4

1、查看数据库的版本 2、查看当前用户 3、查看当前数据库 4、计算表达式的结果; 任何一个数据库,无论大小,都首先是一个超级计算器 5、查看当前MySQL环境中所有的数据库; 系统数据库(只能看)和自定义数据库(任何操作) 6、先建数据库 gaoming 7、如果表已经存在,则创建不能成功 …