Python中命令行参数argparse模块的使用

一、介绍

Python中有一个很强大的命令行参数解析模块 argparse ,使用 argparse 可以非常方便地解析命令行参数并生成帮助信息。argparse 模块可以自动生成帮助信息,还可以自动检查参数和选项的类型以及输入的值是否合法。

二、基本使用

在使用 argparse 之前,需要先导入 argparse 库:

import argparse

接下来,创建一个 ArgumentParser 对象,该对象包含了程序中每个命令行参数有关的信息。

parser = argparse.ArgumentParser(description="description")

其中,description 是该 ArgumentParser 对象的描述信息,在打印帮助信息时将使用该描述信息。接下来,我们可以添加参数。

parser.add_argument('-n', '--name', required=True, help="input your name")

该函数有几个参数需要解释一下:

  • -n 和 --name 表示参数的方式。其中,-n 是一种短参数的方式,--name 是一种长参数的方式。其中,长参数一般是为了人类方便理解。
  • required=True 表示该参数为必选参数。
  • help 是提供给用户的帮助信息。

至此,我们已经定义了一个参数,但是这个参数究竟如何使用呢?

在程序的任意位置,通过如下方式获取参数的值:

args = parser.parse_args()
name = args.name

其中,name 是指获取 -n 或 --name 选项所传递的参数值。

三、实例说明

下面通过两个实例来进一步讲解 argparse 的使用。

实例一:input 参数

import argparse

parser = argparse.ArgumentParser(description="input your name")
parser.add_argument('-n', '--name', required=True, help="input your name")
args = parser.parse_args()

print("Hello " + args.name)

如上述代码所示,我们通过 argparse 封装了一个带有一个必输参数的 Python 脚本,该参数的名称为 name ,执行该脚本时需要输入一个字符串类型的参数。

当用户运行上述脚本时,会看到类似这样的输出:

$ python argparse_demo.py -n kidd
Hello kidd

可以看到,我们在调用程序时通过 -n 参数指定了值,程序正确地返回了 hello kidd 的输出结果。

实例二:output 参数

import argparse

parser = argparse.ArgumentParser(description="output file name")
parser.add_argument('-o', '--output', required=False, help="output file name")
args = parser.parse_args()

filename = args.output or "output.txt"
with open(filename, 'w') as f:
    f.write("Hello argparse")

上述代码中,我们封装了一个支持可选输出文件名的 Python 脚本。该脚本默认生成一个名为 output.txt 的文件,通过 -o 或 --output 参数指定需要生成的文件名。

当用户运行上述脚本时,则可以查看到指定文件内容已经被写入。

$ python argparse_demo.py -o demo.txt

这条命令将会把 "Hello argparse" 写入到 demo.txt 文件中。如果不指定 -o 参数,则会默认使用 output.txt 文件名。

至此,我们就完成了 argparse 模块的使用说明。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python中命令行参数argparse模块的使用 - Python技术站

(0)
上一篇 2023年6月3日
下一篇 2023年6月3日

相关文章

  • 对python抓取需要登录网站数据的方法详解

    对Python抓取需要登录网站数据的方法详解 1. 确定所需网站的登录方式 在开始抓取网站数据之前,我们需要确定该网站的登录方式。大多数网站都有两种类型的登录方式:基于表单的登录和基于cookie的登录。 基于表单的登录涉及到填写表单字段,如用户名和密码,向服务器发送POST请求来登录。如果登录成功,服务器将会响应一些cookie,这些cookie将被存储在…

    python 2023年5月14日
    00
  • python *args **kwargs 在 que 中使用

    【问题标题】:python *args **kwargs used in a quepython *args **kwargs 在 que 中使用 【发布时间】:2023-04-01 02:10:01 【问题描述】: 所以我在 python 中使用 *args **kwargs 功能已经有一段时间了,我遇到了一个问题,我似乎无法在 stackoverflow…

    Python开发 2023年4月8日
    00
  • Python 找出英文单词列表(list)中最长单词链

    Python找出英文单词列表(list)中最长单词链的攻略如下: 基本思路 定义一个变量max_len,用于记录最长单词链的长度,初始值为0。 定义变量cur_len,用于记录当前单词链的长度,初始值为0。 定义一个变量cur_word,用于记录当前单词链的最后一个单词,值为None。 遍历单词列表,对于每个单词,判断它是否当前单词链的下一个单词,如果是,则…

    python 2023年5月13日
    00
  • python实现自动售货机

    Python实现自动售货机攻略 自动售货机是一种现代化的售卖商品的方式,利用这种方式可以大大提高售货的效率和方便性。本文将介绍一种基于Python的自动售货机实现方法。 实现过程 确定商品种类和售价。在程序中设定商品名称和对应售价,可以通过字典的方式来实现。例如: pythonproducts = {‘可乐’: 3, ‘雪碧’: 3, ‘矿泉水’: 2, ‘…

    python 2023年5月19日
    00
  • 通俗讲解python 装饰器

    当我们需要给已经存在的函数添加一些额外的功能,但是又不想修改已有函数的功能时,Python中的装饰器就是一个非常适合的工具。装饰器是一种返回函数的函数,它可以接受一个函数作为参数并返回一个新的函数来增强参数函数的功能。装饰器提供了一种方便的方式来修改函数,而不需要对原始函数的代码进行修改。 什么是装饰器 装饰器本质上是一个 Python 函数或类,可以使其他…

    python 2023年5月18日
    00
  • GTK treeview原理及使用方法解析

    GTK TreeView原理与使用方法解析 什么是GTK TreeView? GTK TreeView是GTK+库中非常重要的一个控件,它是一种树形结构的控件,通常用于显示具有层次结构的数据。例如,在文件管理器中,我们可以将文件夹按照树状形式列表显示,其中每一个文件夹都可以展开或者折叠,里面的文件也可以在不同的目录下进行移动或者复制。GTK TreeView…

    python 2023年6月13日
    00
  • 对Python 内建函数和保留字详解

    Python 内建函数和保留字详解 Python 是一个强大的编程语言,拥有丰富的内建函数和关键字。了解这些内建函数和关键字,将有助于您开发高效、可维护的 Python 代码。 Python 内建函数 Python 内建函数是指在 Python 语言中已经预定义好的函数,可以直接调用。 以下是一些常见的 Python 内建函数: type() type() …

    python 2023年6月5日
    00
  • Python的爬虫包Beautiful Soup中用正则表达式来搜索

    以下是详细讲解“Python的爬虫包BeautifulSoup中用正则表达式来搜索”的完整攻略,包括使用正则表达式搜索HTML文档、使用正则表达式搜索XML文档、两个示例说明和注意事项。 使用正则表达式搜索HTML文档 在Python的爬虫包BeautifulSoup中,我们可以使用正则表达式搜索HTML文档。使用正则表达式搜索HTML文档的步骤如下: 使用…

    python 2023年5月14日
    00
合作推广
合作推广
分享本页
返回顶部