argparse读取参数

  • 用法
  • argparseExample.py简单示例
  • 参考

用法

  • argparse是内置于python中,所以即为直接在命令行中对程序传入参数并让程序运行的便捷工具。
  • 具体步骤如下所示
    1. 导包,为import argparse
    2. 创建一个ArugmentParser对象,随后一切都在这个对象里面操作,为parser = argparse.ArgumentParser()
    3. 加入一些参数,具体方法为parser.add_argument()
    4. 解析参数,为args = parser.parse_args()
  • -h,帮助操作,一般用显示帮助信息,如在加入参数的时候一些定义以及显示
  • 传入参数方法,为parser.add_argument('--integers', type=str, help='传入的数字', default='1', required=True, nargs='+')
    1. –integers, 分为可选参数–和普通参数,可选参数的意义在于保持了代码的逻辑性,可以自定义输入参数顺序,而且在调用的时候只需要args.integers即可【以上述代码为例,省略–即为实际参数】
    2. type,指定参数类型,可以为int,str,float,list,dict等类型,传入为bool类型的时候,需要注意是因为无论传入什么数值都会是True,所以需要用dest和action处理
    3. help,为在输入-h参数的时候,显示的信息,一般用于说明介绍参数
    4. default,即为设置默认参数,一般与type类型一直
    5. required为必须参数,required=True即为输入进入命令行的时候必须带入该参数
    6. nargs为设置该参数下的个数,如果为2-n个参数,需要设置如下操作
      1. '*'为接受0-n个参数
      2. '?'为参数可以设置0-1个
      3. "+"可以设置为1-n个
      4. 【具体跟正则表达式匹配类似】
    7. dest,这里是可以设置为你所需要放置的参数如para1变量,即为最后在args类中的namespace中会赋值给para1,一般配合与action参数一起使用
    8. action,一般为设置为布尔类型,即为store_true和store_false,分别为赋值为真和假

argparseExample.py简单示例

  • #!/usr/bin/env python
    # -- coding: utf-8 --
    # @Time : 2024/1/13 16:08
    # @Author : Lucas
    # @File : argparseExample.py
    import argparse
    parser = argparse.ArgumentParser(description='命令行输入参数随后遍历出来')
    #type是要传入的参数的数据类型  help是该参数的提示信息
    parser.add_argument('--parameterOne', type=int, nargs='+', help='参数1', default=1)
    parser.add_argument('--parameterTwo', type=int, nargs='+', help='参数2', default=2)
    parser.add_argument('--parameterThree', type=int, nargs='?', help='参数2', default=3, required=True)
    args = parser.parse_args()
    # 默认为真,即为最后namespace最终出现为args.flag变量,而且默认如果出现为赋值为假,默认为真
    parser.add_argument('--is_flag', dest='flag', action='store_false', default=True)
    # 获得传入的参数
    print(args)
    # 计算结果
    print(args.parameterThree + args.parameterTwo + args.parameterOne)
    
  • 在命令行中输入python argparseExample.py --parameterThree 1即可

实操

  • 具体的代码放置在GitHub上,具体链接为argparseExample.py【为超链接形式】。此外,个人博客里面也有一些有关于计算机相关的知识和内容,具体链接为https://github.com/LucasandElliot/note

参考

  • python中parse的用法

  • argparse模块用法实例详解

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

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

相关文章

SpringBoot3+Vue3 基础知识(持续更新中~)

bean 把方法的返回结果注入到ioc中 1: 2: 3: 组合注解封装 实战篇: 解析token: 统一携带token: 驼峰命名与下划线命名转换: NotEmpty!!! mybatis: PageHelper设置后,会将pageNum,和pageSize自己拼接…

安全相关问题记录

一、预防XSS攻击 校验输入时进行格式校验过滤过滤<script>,<iframe>等特殊标签过滤onclick,onerror,onfocus等js事件属性编码转义对需要渲染的内容做编码转义限制限制输入长度cookie设置成 http only

Flink 的历史版本特性介绍(一)

如果你还不了解 Flink 是什么,可以查看我之前的介绍文章:Flink 介绍 如果你想跟着我一起学习 flink,欢迎查看订阅专栏:Flink 专栏 这篇文章列举了 Flink 每次发布的版本中的重要特性,从中可以看出 Flink 是如何一步一步发展到今天的。 Flink 的前身是 Stratosphere 项目…

Git笔记——4

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言 一、操作标签 二、推送标签 三、多人协作一 完成准备工作 协作开发 将内容合并进master 四、多人协作二 协作开发 将内容合并进master 五、解决 git branch -a…

【深度学习笔记】3_11 模型选择、欠拟合和过拟合

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;做了部分个人理解标注&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 3.11 模型选择、欠拟合和过拟合 在前几节基于Fashion-MNIST数据集的实验中&#xff0c;我们评价了机器学习模型在训练数据集和测试数…

集合的并发修改异常问题

使用迭代器遍历集合时&#xff0c;同时在删除集合中的数据&#xff0c;程序就会出现并发修改异常的错误。 import java.util.ArrayList; import java.util.Iterator; import java.util.List;public class _Exception {public static void main(String[] args) {List<String…

Kubernetes基本部署概念

文章目录 命名空间&#xff08;Namespaecs&#xff09;查看命名空间查看带有命名空间对象下资源 文件存储持久卷&#xff08;pv&#xff0c;Persistent Volumes&#xff09;卷容量卷模式&#xff08;volumeMode&#xff09;访问模式&#xff08;accessModes&#xff09;回收策略…

2023年06月CCF-GESP编程能力等级认证C++编程四级真题解析

一、单选题(每题 2 分,共 30 分) 第1题 高级语言编写的程序需要经过以下( )操作,可以生成在计算机上运行的可执行代码。 A. 编辑 B. 保存 C. 调试 D. 编译 答案:D 第2题 排序算法是稳定的(Stable Sorting),就是指排序算法可以保证,在待排序数据中有两个相等记录…

AR汽车行业解决方案系列之2-远程汽修

在汽车行业中&#xff0c;AR技术的应用正悄然改变着整个产业链的运作方式&#xff0c;应用涵盖培训、汽修、汽车售后、PDI交付、质检以及汽车装配等&#xff0c;AR技术为多个环节都带来了前所未有的便利与效率提升。 安宝特AR将以系列推文的形式为读者逐一介绍在汽车行业中安宝…

【多线程】阻塞队列详解及实现(模拟实现生产者消费者模型)

阻塞队列 &#x1f334;生产者消费者模型&#x1f338;强耦合&#x1f338;松耦合&#xff08;解耦合&#xff09; &#x1f38d;Java标准库中的阻塞队列&#x1f333;阻塞队列的模拟实现⭕总结 阻塞队列是什么? 阻塞队列是⼀种特殊的队列. 也遵守 “先进先出” 的阻塞队列能是…

四信AI智能识别及计量监测设备,助力入河入海排污口规范化建设

随着城市化和工业化的快速发展&#xff0c;污水排放已成为主要的环境问题之一。2022年&#xff0c;国务院办公厅发布《关于加强入河入海排污口监督管理工作的实施意见》&#xff0c;提出“加强科技研发&#xff0c;开展各类遥感监测、水面航测、水下探测、管线排查等实用技术和…

游戏配置内存“瘦身”策略

背景 游戏配置数据绝对是游戏服务器进程的内存大头,有些游戏服务器单纯数据配置的容量就超过一个G。因此,这部分内存优化也就放在首要位置了。 优化策略 在《服务器进程如何降低内存》一文中,我们讲述了可以通过“优化游戏配置缓存”来降低游戏服务器进程的内存使用量。本…

知乎万赞:为什么我不建议你转行学python?_为什么不建议学python

写在前面 本文的目的很简单&#xff0c;一句话&#xff1a; 用最少的时间&#xff0c;最高效率&#xff0c;让你清楚&#xff1a;想要拿到python offer&#xff0c;你需要做什么&#xff1f;你该怎么做&#xff1f;如果你不具备这些条件&#xff0c;我不建议你转行学python&a…

Stable Diffusion 3重磅发布

刚不久&#xff0c;Stability AI发布了Stable Diffusion 3.0&#xff0c;这一版本采用了与备受瞩目的爆火Sora相同的DiT架构。通过这一更新&#xff0c;画面质量、文字渲染以及对复杂对象的理解能力都得到了显著提升。由于这些改进&#xff0c;先前的技术Midjourney和DALL-E 3在…

【并发】CAS原子操作

1. 定义 CAS是Compare And Swap的缩写&#xff0c;直译就是比较并交换。CAS是现代CPU广泛支持的一种对内存中的共享数据进行操作的一种特殊指令&#xff0c;这个指令会对内存中的共享数据做原子的读写操作。其作用是让CPU比较内存中某个值是否和预期的值相同&#xff0c;如果相…

性能压测关注的指标有哪些?

在进行全链路压测和性能测试时,需要关注多个关键性能指标(KPIs)来评估系统的性能表现,以下是一些常见的性能测试指标。 1. 吞吐量(Throughput) 系统在单位时间内能够处理的请求数量或事务数量,通常以每秒请求数(RPS/TPS)来衡量。 2. 响应时间(Response Time) 从…

springboot217志同道合交友网站

springboot志同道合交友网站设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术&#xff0c;让传统数据信息的管理升级为软件存储&#xff0c;归纳&#xff0c;集中处理数据信息的管理方式。本志同道合交友网站就是在这样的大环境下诞生&#xff0c;其可以帮助…

内网穿透教程-SSH连接访问服务器主机(手把手教学)

内网穿透教程-用于SSH连接访问服务器主机 访问量子互联官网&#xff08;用于内网穿透的工具-需付费&#xff09; 打开官网&#xff1a; https://console.uulap.com/ 访问控制台&#xff1a; 可直接查看内网穿透新手使用教程&#xff1a;http://doc.uulap.com/docs/nattunnel/s…

大模型实战营第二期——4. XTuner 大模型单卡低成本微调实战

github地址&#xff1a;InternLM/tutorial-书生浦语大模型实战营文档地址&#xff1a;XTuner 大模型单卡低成本微调实战视频地址&#xff1a;XTuner 大模型单卡低成本微调实战Intern Studio: https://studio.intern-ai.org.cn/console/instance 这个人的研究方向是眼科的AI&am…

AI Agent深入浅出——以ERNIE SDK和多工具智能编排为例

在过去一年里&#xff0c;通用大语言模型&#xff08;LLM&#xff09;的飞速发展引起了全球的关注。百度等科技巨头推出了各自的大模型&#xff0c;不断提高语言模型性能的上限。然而&#xff0c;业界对LLM所设定的目标不再局限于基本的问答功能&#xff0c;而是寻求利用大模型…