argparse是一个命令行参数解析模块!它要运行在命令行下(cmd命令窗口)。
1.基础知识:
python代码:
import argparse
parser = argparse.ArgumentParser()
parser.parse_args()
cmd窗口:
C:\Users\Administrator>cd C:\Users\Administrator\Desktop
C:\Users\Administrator\Desktop>python argparse示例.py --help
usage: argparse示例.py [-h]
optional arguments:
-h, --help show this help message and exit
1.1添加参数
python代码:
import argparse
parser = argparse.ArgumentParser()
# 添加参数
parser.add_argument("echo")
args = parser.parse_args()
print(args.echo)
cmd窗口:
C:\Users\Administrator\Desktop>python argparse示例.py --help
usage: argparse示例.py [-h] echo
positional arguments:
echo
optional arguments:
-h, --help show this help message and exit
C:\Users\Administrator\Desktop>python argparse示例.py aaaaaa
aaaaaa
C:\Users\Administrator\Desktop>python argparse示例.py liming
liming
# 如果不在命令后不加任何东西会返回错误信息
C:\Users\Administrator\Desktop>python argparse示例.py
usage: argparse示例.py [-h] echo
argparse示例.py: error: the following arguments are required: echo
C:\Users\Administrator\Desktop>
1.2添加描述信息
python代码:
import argparse
parser = argparse.ArgumentParser()
#添加描述信息
parser.description = '这是添加描述信息!'
#添加参数
parser.add_argument("echo")
args = parser.parse_args()
print(args.echo)
cmd窗口:
C:\Users\Administrator\Desktop>python argparse示例.py --help
usage: argparse示例.py [-h] echo
这是添加描述信息!
positional arguments:
echo
optional arguments:
-h, --help show this help message and exit
C:\Users\Administrator\Desktop>
2.示例
2.1计算两个数的乘积
python代码:
import argparse
parser = argparse.ArgumentParser()
parser.description = '给我两个数字,告诉你他们两个的积'
parser.add_argument("ParA", help="我是A", type=int)
parser.add_argument("ParB", help="我是B", type=int)
args = parser.parse_args()
print('算出来啦!积是', args.ParA*args.ParB)
cmd窗口:
C:\Users\Administrator\Desktop>python argparse示例.py --help
usage: argparse示例.py [-h] ParA ParB
给我两个数字,告诉你他们两个的积
positional arguments:
ParA 我是A
ParB 我是B
optional arguments:
-h, --help show this help message and exit
C:\Users\Administrator\Desktop>python argparse示例.py 6 7
算出来啦!积是 42
C:\Users\Administrator\Desktop>
2.2计算两个数的乘积改进
python代码:
import argparse
parser = argparse.ArgumentParser()
parser.description = '给我两个数字,告诉你他们两个的积'
parser.add_argument("-a", "--ParA", help="我是A", type=int)
parser.add_argument("-b", "--ParB", help="我是B", type=int)
args = parser.parse_args()
if args.ParA:
print('输入了A,它是',args.ParA)
if args.ParB:
print('输入了B,它是',args.ParB)
if args.ParA and args.ParB:
print('算出来啦!积是', args.ParA*args.ParB)
cmd窗口:
C:\Users\Administrator\Desktop>python argparse示例.py -a 4
输入了A,它是 4
C:\Users\Administrator\Desktop>python argparse示例.py -b 8
输入了B,它是 8
C:\Users\Administrator\Desktop>python argparse示例.py -a 4 -b 8
输入了A,它是 4
输入了B,它是 8
算出来啦!积是 32
C:\Users\Administrator\Desktop>python argparse示例.py -b 8 -a 4
输入了A,它是 4
输入了B,它是 8
算出来啦!积是 32
C:\Users\Administrator\Desktop>python argparse示例.py 4 8
usage: argparse示例.py [-h] [-a PARA] [-b PARB]
argparse示例.py: error: unrecognized arguments: 4 8
C:\Users\Administrator\Desktop>