parser.add_argument中的action使用

argparse是Python内置的命令行参数解析模块。在使用add_argument方法时,可以通过action参数指定对参数的特殊处理方式。下面我将详细讲解parser.add_argument中的action使用的完整攻略,包括常用的几种action和它们的用法。

store

使用store时,将参数值存储到args的命名空间中。如果在命令行中指定了参数,则存储指定的参数值;否则,将使用默认值。例如:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--foo', action='store', default='bar')
args = parser.parse_args()

print(args.foo)

上面的代码在命令行中运行时不指定--foo参数值,则args.foo的值为'bar'

store_const

使用store_const时,将常量(const)值存储到args的命名空间中,该常量值与指定的参数名相对应。如果在命令行中指定了该参数,则将该常量值存储到args的命名空间中。例如:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--foo', action='store_const', const=42)
args = parser.parse_args()

print(args.foo)

上面的代码在命令行中运行时指定--foo参数,则args.foo的值为42;否则为None

其他常用action选项

除了上述两种action选项,还有一些常用的选项:

  • store_true: 将布尔值True存储到args的命名空间中。
  • store_false: 将布尔值False存储到args的命名空间中。
  • append: 将值追加到列表中。
  • append_const: 将常量值追加到列表中。
  • version: 打印程序版本号并退出。

下面是store_truestore_false的示例:

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--foo', action='store_true')
parser.add_argument('--bar', action='store_false')
args = parser.parse_args()

print(args.foo)
print(args.bar)

上面的代码在命令行中运行时指定--foo参数,则args.foo的值为True;若指定--bar参数,则args.bar的值为False

import argparse

parser = argparse.ArgumentParser()
parser.add_argument('--debug', dest='debug_mode', action='store_true')
parser.add_argument('--no-debug', dest='debug_mode', action='store_false')
parser.set_defaults(debug_mode=False)
args = parser.parse_args()

print(args.debug_mode)

上面的代码在命令行中运行时指定--debug参数,则args.debug_mode的值为True; 若指定--no-debug参数,则args.debug_mode的值为False。若不指定任何参数则默认为False

这就是parser.add_argument中的action使用的完整攻略。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:parser.add_argument中的action使用 - Python技术站

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

相关文章

  • Python hashlib模块加密过程解析

    Python hashlib模块加密过程解析 hashlib 模块是Python中用于数据加密的模块,支持常见的加密算法和散列函数(哈希函数)。 在本文中,我们将详细讲解如何使用Python中的 hashlib 模块进行数据加密。 加密原理 在加密过程中,我们使用哈希函数将明文转换为定长的哈希值或验证值(也称为摘要、签名或消息摘要),并将其存储在数据库或其他…

    python 2023年6月2日
    00
  • 10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)

    下面是对题目“10 行 Python 代码教你自动发送短信(不想回复工作邮件妙招)”的详细讲解,包含代码教程和示例: 1. 简介 本文介绍如何使用 Python 代码实现自动发送短信的功能,以及为什么这个功能特别适用于不想回复工作邮件的场景。本文的代码只需要 10 行 Python 代码,非常的简洁和实用。 2. 实现步骤 本文使用了中国移动的短信接口来实现…

    python 2023年5月19日
    00
  • Python+tkinter实现网站下载工具

    Python是一种强大的编程语言,它非常适合开发各种实用工具。随着互联网的普及,网站下载工具也成为了许多用户的必备工具之一。在本文中,我们将引导您通过Python+tkinter实现一个简单的网站下载工具。整个过程中,我们将会使用到以下几个步骤: 构建GUI界面 输入要下载的网站URL 解析HTML文档获取下载链接 下载文件并显示进度条 下面将详细讲解这几个…

    python 2023年6月13日
    00
  • PyTorch策略梯度算法详情

    PyTorch策略梯度算法详情 PyTorch是一个流行的深度学习框架,它提供了许多用于实现强化学习算法的工具。其中,策略梯度算法是一种常用强化学习算法,它可以用于解决多种实际问题。在本文中,我们将介绍PyTorch中策略梯度算法的基本原理,并提供两个示例,以说明如何使用PyTorch实现策略梯度算法。 策略梯度算法的基本原理 策略梯度算法是一种基于梯度的强…

    python 2023年5月14日
    00
  • Python设置默认编码为utf8的方法

    如果你使用Python 2.x版本,可以通过在脚本开头添加以下代码来设置默认编码为utf8: # -*- coding: utf-8 -*- 这条代码告诉Python解释器,脚本中的所有文本都应当按照utf8编码解析。在Python 3.x版本,utf8已经被默认设置为编码,你不需要再做这个设置了。 另外,你也可以在Python命令行环境下以交互方式设置编码…

    python 2023年5月13日
    00
  • OpenCV 绘制同心圆的示例代码

    绘制同心圆是计算机视觉中常见的任务,可以使用OpenCV通过简单的代码实现。以下是绘制两个同心圆的示例代码: import cv2 # 创建一个黑色的图像 img = np.zeros((512,512,3), np.uint8) # 确定两个圆的中心坐标与半径 center1 = (256, 256) radius1 = 100 center2 = (25…

    python 2023年5月18日
    00
  • python数据类型的详细分析(附示例代码)

    让我来介绍一下关于Python数据类型的详细分析和示例代码吧。 Python数据类型的分类 Python中主要有以下几种数据类型: 数字类型:包括整数、浮点数和复数 字符串类型:表示文本信息的数据类型 列表类型:有序可变的数据集合 元组类型:有序不可变的数据集合 集合类型:无序可变的数据集合 字典类型:包含键值对的数据集合 数字类型 Python中数字类型包…

    python 2023年5月14日
    00
  • 如何理解python面向对象编程

    如何理解 Python 面向对象编程 Python 面向对象编程(Object Oriented Programming,OOP)是一种软件开发的方法,它以对象为中心,将数据和函数封装到一个对象中,使处理数据更加具有结构性和可维护性。在 Python 中,所有的数据(如整数、字符串、列表等)都是对象,我们可以使用面向对象编程的方法来操作它们。 下面是 Pyt…

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