Python包argparse模块常用方法

 更新时间:2021年06月04日 10:36:08   作者:cuntou0906  
argparse是python用于解析命令行参数和选项的标准模块。argparse模块的作用是用于解析命令行参数,通过实例代码讲解argparse的基本使用方法,感兴趣的朋友跟随小编一起看看吧

argparse介绍

  argparse包用于解释命令行参数。这里给出几个常用的方法。

# 创建解析器对象
# @para: description:描述信息
Arg = ArgumentParser(description='An example for Python package argparse~')

# 添加参数
# @para: 后面举例子再细说
Arg.add_argument()

# 解析参数
# @return: 返回的arg是一个对象,里面的属性和属性值来自命令行
arg = Arg.parse_args()

# 创建互斥组
# @description:互斥组内的参数不能同时出现
Arg.add_mutually_exclusive_group()

argparse实例

基本使用

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
arg = Arg.parse_args()

不添加任何参数,cmd运行结果:

在这里插入图片描述

默认可以使用-h或者–help查看参数列表。因为没有添加任何参数,因此,这里只有一个-h。可以看到description的描述信息也可以在-h下打印出来。

添加参数

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('a')
arg = Arg.parse_args()
print("arg 的内的参数{}".format(arg.a))
args = vars(arg)
print("arg 的内的参数{}".format(args['a']))

在这里插入图片描述

添加参数后,需要在运行后面带上参数,否则报错。

添加可选参数

前面添加的参数,一定要传入参数值。

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',help='add all para!')
arg = Arg.parse_args()
print("arg 的内的参数{}".format(arg.a))
args = vars(arg)
print("arg 的内的参数{}".format(args['a']))

只需在参数前加上-(用于一个字母,例如-h)或者--(用于多个字母,例如--help),即可选择是否需要传入参数。

在这里插入图片描述

但是如果指定了参数,后面一定要跟上参数值,否则会报错。例如:

在这里插入图片描述

在添加参数的时候,加上action="store_true"

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',help='add all para!',action="store_true")
arg = Arg.parse_args()
print("arg 的内的参数{}".format(arg.a))
args = vars(arg)
print("arg 的内的参数{}".format(args['a']))

在这里插入图片描述

当我们带上-a运行,在代码里得到的a值为True,不带则为False。这个是不是和-h类似,当我们带上-h,里面有个if判断,就把相关信息print出来了。

固定类型type

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',type = int ,help='add all para!',action="store_true")
arg = Arg.parse_args()
print("arg 的内的参数{}".format(arg.a))
args = vars(arg)
print("arg 的内的参数{}".format(args['a']))

在这里插入图片描述

可选值和默认值

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Arg.add_argument('-a','-all',type = int ,help='add all para!',choices=[0,1,2,3],default='3')
arg = Arg.parse_args()
print("arg 的内的参数{}".format(arg.a))
args = vars(arg)
print("arg 的内的参数{}".format(args['a']))

在这里插入图片描述

互斥参数

import argparse
Arg = argparse.ArgumentParser(description='An example for Python package argparse~')
Gro = Arg.add_mutually_exclusive_group()
Gro.add_argument('-a','-all',help='add all para!')
Gro.add_argument('-b','-ball',help='add ball para!')

arg = Arg.parse_args()
args = vars(arg)
if args.get('a',None):
    print("arg 的内的参数b:{}".format(args['a']))
if args.get('b', None):
    print("arg 的内的参数b:{}".format(args['b']))

在这里插入图片描述

可以看出,在互斥组内,参数不可以同时出现,仅可出现一个或者都不出现。所以在互斥组内添加的参数必须是可选参数,也就是以-或者--开头的。 

以上就是Python包argparse模块常用方法的详细内容,更多关于Python包argparse使用的资料请关注脚本之家其它相关文章!

相关文章

  • Python中read()、readline()和readlines()方法比较及使用详解

    Python中read()、readline()和readlines()方法比较及使用详解

    在Python文件操作中,read()、readline()和readlines()是三个常用的文件读取方法,它们各有特点,适用于不同的场景,本文将深入探讨这三个方法的区别、使用场景、性能比较以及最佳实践,需要的朋友可以参考下
    2025-03-03
  • python列表推导式操作解析

    python列表推导式操作解析

    这篇文章主要介绍了python列表推导式操作解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-11-11
  • Python实现接口自动化测试的方法详解

    Python实现接口自动化测试的方法详解

    Python接口自动化测试是一种高效、可重复的软件质量验证方法,尤其在现代软件开发中,它已经成为不可或缺的一部分,本文将深入探讨如何使用Python进行接口自动化测试,文中通过代码示例介绍的非常详细,需要的朋友可以参考下
    2024-08-08
  • python必备库Matplotlib画图神器

    python必备库Matplotlib画图神器

    这篇文章主要介绍了python必备库Matplotlib画图神器,Matplotlib 是 Python 中最受欢迎的数据可视化软件包之一,支持跨平台运行,它是 Python 常用的 2D 绘图库,同时它也提供了一部分 3D 绘图接口,更多详细内容,需要的小伙伴可以参考一下下面文章具体内容
    2022-03-03
  • filter使用python3代码进行迭代元素的实例详解

    filter使用python3代码进行迭代元素的实例详解

    在本篇文章里小编给大家整理了关于filter使用python3代码进行迭代元素的实例详解内容,有兴趣的朋友们可以参考下。
    2020-12-12
  • python解析模块(ConfigParser)使用方法

    python解析模块(ConfigParser)使用方法

    很多软件都有配置文件,今天介绍一下python ConfigParser模块解析配置文件的使用方法
    2013-12-12
  • Python中的策略模式之解锁编程的新维度

    Python中的策略模式之解锁编程的新维度

    策略模式是一种设计模式,通过定义一系列算法,将它们封装起来,并且使它们可以相互替换,从而使算法的变化独立于使用算法的客户,本文给大家介绍Python中的策略模式之解锁编程的新维度,感兴趣的朋友跟随小编一起看看吧
    2024-10-10
  • 一文详解Python中的行为验证码验证功能

    一文详解Python中的行为验证码验证功能

    最近在开发行为验证码,经常触及到关于验证类型的相关内容。但使用起来不太熟练,所以本文就来总结一下对行为验证码验证类型的理解
    2023-03-03
  • python打包发布pypi及更新全部流程

    python打包发布pypi及更新全部流程

    这篇文章主要介绍了python打包发布pypi及更新全部流程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • python 删除字符串中连续多个空格并保留一个的方法

    python 删除字符串中连续多个空格并保留一个的方法

    今天小编就为大家分享一篇python 删除字符串中连续多个空格并保留一个的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12

最新评论