python中argparse模块简介

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/colourful_sky/article/details/84038583

前言:

在多个文件或者不同语言协同的项目中,python脚本经常需要从命令行直接读取参数。万能的python就自带了argprase包使得这一工作变得简单而规范。PS:optparse包是类似的功能,只不过写起来更麻烦一些。

argparse模块:

Python解析命令行读取参数 —— argparse模块是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块

使用步骤

1. 创建 ArgumentParser() 对象

parser = argparse.ArgumentParser()

2. 调用 add_argument() 方法添加参数

parser.add_argument('integer', type=int, help='display an integer')

3. 使用 parse_args() 解析添加的参数

args = parser.parse_args()

以上第三步若parse_args() 函数没接收参数,则其默认会从命令行接收参数列表,args = sys.argv[1:],之所以下标从1开始,是因为sys.argv[0]是当前脚本的文件名。

举个例子:

import argparse

parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
                    help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
                    const=sum, default=max,
                    help='sum the integers (default: find the max)')

args = parser.parse_args()
print(args)
print(args.accumulate(args.integers))

输出:
在这里插入图片描述
以上例子来自:https://docs.python.org/3/library/argparse.html

以上integers定位参数,而sum可选参数,可选参数会有一个默认值,通常定位参数和可选参数混合使用。

参考:

  1. https://docs.python.org/3/library/argparse.html
  2. https://www.cnblogs.com/lindaxin/p/7975697.html
  3. https://www.imooc.com/article/34047
  4. https://www.cnblogs.com/arkenstone/p/6250782.html

没有更多推荐了,返回首页