argparse函数用法

argparse 是 Python 内置的用于解析命令行参数的库,它可以帮助开发者创建用户友好的命令行界面,从而方便用户通过命令行向程序传递参数。通过 argparse,你可以定义程序可以接受的命令行参数的类型、数量以及帮助文本等。

下面是 argparse 的基本用法:

#导入argparse模块:
import argparse 

#创建ArgumentParser对象:
parser = argparse.ArgumentParser(description='Description of your program')

#添加命令行参数:
parser.add_argument('arg_name', type=str, help='Help text for this argument')

#解析命令行参数:
args = parser.parse_args()

#使用解析得到的参数:
print(args.arg_name)

arg_name: 参数名称,可以通过 args.arg_name 来访问参数的值。
type: 参数的类型,可以是 int、float、str 等。
help: 参数的帮助文本,会在用户请求帮助时显示。

parser.add_argument 是 argparse.ArgumentParser 类的一个方法,用于向解析器添加命令行参数选项。

parser.add_argument(name or flags, action, nargs, const, default, type, choices, required, help, metavar)

name or flags:参数的名称或选项。可以是位置参数的名称(无前缀)或带有前缀 - 或 – 的选项名称。例如,“filename” 是一个位置参数的名称,而 “–output” 是一个选项名称。

action:参数的动作。它指定当命令行中出现该参数时,应该采取什么操作。常用的动作有 “store”(保存值,默认)、“store_const”(保存常量值)、“store_true”(保存 True)、“store_false”(保存 False)、“append”(追加值到列表中)、“append_const”(追加常量到列表中)等。

nargs:参数的数量。它指定该参数接受的值的数量。常用的取值有 None(默认,接受一个值)、‘?’(接受零个或一个值)、‘*’(接受零个或多个值)、‘+’(接受至少一个值)等。

const:常量值。当参数使用 store_const 动作时,该参数指定存储的常量值。

default:默认值。当命令行中没有提供该参数时,使用的默认值。

type:值的类型。指定参数值应该被解析成的数据类型。

choices:值的限制。指定允许的参数值,只有提供的值才会被接受。

required:是否必需。如果设置为 True,则该参数为必需参数,不提供将报错。

help:帮助文本。用于显示该参数的帮助信息,通常是参数的简要描述。

metavar:用于显示帮助信息中参数的名称。

以上参数中,name or flags 、type和 help 是最常用的参数,其他参数根据需要使用。在实际使用时,您可以根据您的命令行参数需求,灵活地选择适合的参数设置。

接下来,让我们通过一个简单的例子来说明 argparse 的用法。假设我们要编写一个简单的计算器程序,能够对两个数进行加、减、乘、除操作。
新建一个名为calculator的pythonfile,输入以下代码:

import argparse

def add(x, y):
    return x + y

def subtract(x, y):
    return x - y

def multiply(x, y):
    return x * y

def divide(x, y):
    return x / y

parser = argparse.ArgumentParser(description='Simple calculator')
parser.add_argument('operation', type=str, help='Operation to perform: add, subtract, multiply, divide')
parser.add_argument('num1', type=float, help='First number')
parser.add_argument('num2', type=float, help='Second number')

args = parser.parse_args()

if args.operation == 'add':
    result = add(args.num1, args.num2)
elif args.operation == 'subtract':
    result = subtract(args.num1, args.num2)
elif args.operation == 'multiply':
    result = multiply(args.num1, args.num2)
elif args.operation == 'divide':
    result = divide(args.num1, args.num2)
else:
    print('Invalid operation')
    exit(1)

print('Result:', result)

通过运行该程序,并传递参数,可以执行不同的操作。例如在terminal中运行以下的命令:

python calculator.py add 10 5

输出结果:

Result: 15.0

或:

python calculator.py divide 10 5

输出结果:

Result: 2.0

使用 python calculator.py -h 可以查看帮助文档

python calculator.py -h

显示:

usage: calculator.py [-h] operation num1 num2

Simple calculator

positional arguments:
  operation   Operation to perform: add, subtract, multiply, divide
  num1        First number
  num2        Second number

optional arguments:
  -h, --help  show this help message and exit

如此,用户可以通过命令行传递参数并执行不同的计算操作。

你可能感兴趣的:(前端,深度学习)