python的argparse模块使用教程


前言

在训练神经网络时候,为了方便设定超参数,经常调用argparse模块的相关内容,写下这篇文章和大家一起学习python的argparse模块
(使用环境操作系统 windows10)


一、argparse模块

官方教程:https://docs.python.org/zh-cn/3/howto/argparse.html

二、argparse使用

1.基础

运行下面代码:

import argparse
parser = argparse.ArgumentParser()
parser.parse_args()

运行结果如下:

G:\PTA>python test.py

G:\PTA>python test.py --help
usage: test.py [-h]

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

2.位置参数介绍

运行下面代码:

import argparse
parser = argparse.ArgumentParser()

parser.add_argument("echo")
args = parser.parse_args()
print(args.echo)

运行结果如下:

G:\PTA>python test.py -h echo
usage: test.py [-h] echo

positional arguments:
  echo

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

G:\PTA>python test.py -h
usage: test.py [-h] echo

positional arguments:
  echo

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

G:\PTA>python test.py foo
foo

增加了 add_argument() 方法,该方法用于指定程序能够接受哪些命令行选项。

3.add_argument

运行下面代码:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("square", help="display a square of a given number",
                    type=int)
args = parser.parse_args()
print(args.square**2)

运行结果如下:

G:\PTA>python test.py square  #第一次运行
usage: test.py [-h] square
test.py: error: argument square: invalid int value: 'square'

G:\PTA>python test.py -h   #第二次运行
usage: test.py [-h] square

positional arguments:
  square      display a square of a given number

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

G:\PTA>python test.py 4   第三次运行
16

第一次运行:输入错误,提示错误原因
第二次运行:帮助
第三次运行:根据输入字符打印结果

4.命令行用法

运行下面代码:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-v", "--verbose", help="increase output verbosity",
                    action="store_true")
args = parser.parse_args()
if args.verbose:
    print("verbosity turned on")

运行结果如下:

G:\PTA>python test.py -v
verbosity turned on

G:\PTA>python test.py --help
usage: test.py [-h] [-v]

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose  increase output verbosity

5.结合位置参数和可选参数

运行下面代码:

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("square", type=int,
                    help="display a square of a given number")
parser.add_argument("-v", "--verbose", action="store_true",
                    help="increase output verbosity")
args = parser.parse_args()
answer = args.square**2
if args.verbose:
    print("the square of {} equals {}".format(args.square, answer))
else:
    print(answer)

运行结果如下:

G:\PTA>python test.py 5
25

G:\PTA>python test.py -v
usage: test.py [-h] [-v] square
test.py: error: the following arguments are required: square

G:\PTA>python test.py -v 5
the square of 5 equals 25

总结

介绍了argparse的入门基础。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想当极客的小芦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值