使用 python 中的 argparse 模块解析单个参数

Use argparse module in python to parse a single argument

几年前用过OptParse模块,感觉好简单,但是看到argparse模块,感觉用起来不太直观。因此,我需要一些帮助。

我目前有(还不多):

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

我希望能够发出像 python myscript.py --char 20 这样的命令。 charvalue 标志将始终是 int

如果有人能帮忙,我将不胜感激!谢谢

这是添加和检索参数的方式:

import argparse
parser = argparse.ArgumentParser()

parser.add_argument('--char', type=int,
                   help='number of characters')

args = parser.parse_args()
char = args.char

您应该查看文档: https://docs.python.org/3/library/argparse.html

这是一个教程: https://docs.python.org/2/howto/argparse.html

您需要向解析器对象添加一个参数,并可选择将参数type指定为int

# testargs.py
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--char', type=int)
args = parser.parse_args()

print(args.char)

如果你用

执行这个文件
python testargs.py --char 20

它应该打印 20 到控制台