Python argparse中的action=store_true用法小结

yizhihongxing

Python argparse中的action=store_true用法小结攻略如下:

1. 理解action=store_true

在Python中的argparse模块中,action是参数值如何被处理的方式,其中,action=store_true表示在命令行中指定该参数时,该参数对应的值为True,不指定则为False。

在argparse中,使用parser.add_argument()函数来添加参数。下面是一个简单的使用示例:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--verbose', action='store_true', help='increase output verbosity')
args = parser.parse_args()

if args.verbose:
    print("Verbosity turned on")

这个例子中,我们创建了一个参数--verbose,并使用action='store_true'来指定参数只能是True或False。如下面的示例所示:

2. 示例一

我们的测试代码如下,它接受一个--debug参数来开启debug模式。

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("-d", "--debug", help="turn on debug mode", action="store_true")
args = parser.parse_args()

if args.debug:
    print("Debug mode ON")
else:
    print("Debug mode OFF")

通过下面的两个命令行调用,我们可以测试开启和关闭debug模式的输出情况:

python demo.py -d

输出结果为:Debug mode ON

python demo.py

输出结果为:Debug mode OFF

在以上的例子中,我们使用了"-d", "--debug"来指定了参数的名称,指定了参数的提示信息为“turn on debug mode”。当使用action="store_true"参数时,无论是否指定参数值,其值均为True。所以,当--debug参数存在时,我们才会输出Debug mode ON,否则为Debug mode OFF。

3. 示例二

在以下示例中,我们将演示如何使用argparse来解析命令行中的多个参数。

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--debug', dest='debug', action='store_true', help='enable debug mode')
parser.add_argument('--name', dest='name', help='your name')

args = parser.parse_args()

if args.debug:
    print("Debug mode ON")
else:
    print("Debug mode OFF")

if args.name:
    print("Hello, %s!" % args.name)
else:
    print("Hello, World!")

在这个例子中,程序接受两个参数:--debug--name--debug参数用来开启/关闭调试模式,--name参数用来指定姓名。我们来测试一下这个程序,如下所示:

# 仅开启debug模式
python demo.py --debug
# 输出结果为:Debug mode ON
Hello, World!

# 仅输入姓名
python demo.py --name Bob
# 输出结果为:Debug mode OFF
Hello, Bob!

# 同时开启debug模式和输入姓名
python demo.py --debug --name Bob
# 输出结果为:Debug mode ON
Hello, Bob!

在这个例子中,我们成功使用了argparse解析了两个命令行参数,--debug--name。其中,--debug参数使用了action='store_true'来指定参数的值仅可为True或False,而--name参数则没有指定action,它可以接受用户指定的任何值。

通过以上两个示例的讲解,我们对于Python argparse中的action=store_true用法有了一个完整的了解。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python argparse中的action=store_true用法小结 - Python技术站

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

相关文章

  • pytest生成简单自定义测试结果的html报告

    Pytest生成简单自定义测试结果的HTML报告攻略 Pytest是Python中一个常用的测试框架,它可以帮助我们更加高效地编写和运行测试用例。在本文中,我们将深入讲解如何使用Pytest生成简单自定义测试结果的HTML报告,并提供两个示例,以便更好地理解这个过程。 安装pytest-html插件 在使用Pytest生成HTML报告之前,我们需要先安装py…

    python 2023年5月15日
    00
  • 详解python requests中的post请求的参数问题

    以下是关于Python中requests库中的POST请求参数问题的攻略: 详解Python requests中的POST请求参数问题 requests是Python中一个流行的HTTP库,可以用于向Web服务器发送HTTP请求和接响应。其中POST请求是requests库中最常用的请求之一,以下是详解Python requests中的POST请求参数问题的…

    python 2023年5月14日
    00
  • python函数声明和调用定义及原理详解

    Python函数声明和调用定义及原理详解 在Python中,函数是一种非常重要的编程工具。函数允许我们将重复的任务打包成可重复使用的模块,并且提高了代码的可读性和可维护性。下面我们就来详细讲解一下Python函数声明和调用的定义及原理。 函数声明 函数是由def关键字定义的,语法结构如下: def function_name(parameters): # 具…

    python 2023年5月18日
    00
  • Python网络爬虫信息提取mooc代码实例

    Python网络爬虫信息提取mooc代码实例攻略 本篇攻略主要介绍Python网络爬虫信息提取MOOC课程的代码实现过程。涉及到的工具和模块包括Requests、BeautifulSoup、正则表达式等。该攻略的目标是爬取公开的MOOC课程列表信息。 1. 准备工作 在开始进行爬虫操作之前,我们需要先安装好所需的Python模块及相关IDE,比如Anacon…

    python 2023年5月14日
    00
  • python报错TypeError: ‘NoneType‘ object is not subscriptable的解决方法

    当出现TypeError: ‘NoneType’ object is not subscriptable错误时,通常代表着代码中使用了一个None没法被下标访问的变量。这里提供几种可能的解决方法。 1. 检查None值 第一种解决方法是检查None值,因为只有None值才会引起此类TypeError报错。通常只需要判断变量是否为None即可,如下所示: if…

    python 2023年5月13日
    00
  • 用Python实现一个模仿UP主弹幕控制的直播间功能

    让我来详细讲解一下用Python实现一个模仿UP主弹幕控制的直播间功能的完整攻略。 1. 确定开发环境 首先需要确定开发环境,建议使用Python 3.x版本。为了便于开发和调试,推荐使用集成开发环境(IDE)例如PyCharm、VS Code等。 2. 安装必要的库 实现弹幕控制直播间的功能需要用到第三方库DanmuKu、bilibili_api等。可以使…

    python 2023年5月18日
    00
  • python urllib.request模块的使用详解

    Python urllib.request 模块的使用详解 Python 的 urllib.request 模块是 Python 自带的 HTTP 请求库,可以用于发送 HTTP 请求。本文将详细介绍 urllib.request 模块的使用方法。 发送 GET 请求 使用 urllib.request 模块发送 GET 请求非常简单,只需要调用 urlop…

    python 2023年5月15日
    00
  • Python语言进阶知识点总结

    Python语言进阶知识点总结 Python是一种高级编程语言,应用广泛且逐渐成为许多开发人员的首选语言。本文将介绍Python语言的一些进阶知识点。 1. 类与对象 Python是一种面向对象编程语言,支持类和对象的概念。我们可以使用class来定义一个类,使用对象的实例来调用类的方法和属性。 示例1: class Person: def __init__…

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