python argparse模块

Python解析命令行读取参数有两种方式:sys.argv和argparse


1、sys.argv

如果脚本很简单或临时使用,没有多个复杂的参数选项,可以直接利用sys.argv将脚本后的参数依次读取(读进来的默认是字符串格式)。

import sys 

print("输入的参数为:%s"  %  sys.argv[1])


命令行执行效果:

>python demo.py 1

输入的参数为:1


2、argparse


argparse是python标准库里面用来处理命令行参数的库

命令行参数分为位置参数和选项参数:

位置参数就是程序根据该参数出现的位置来确定的

如:[root@openstack_1 /]# ls root/    #其中root/是位置参数

选项参数是应用程序已经提前定义好的参数,不是随意指定的

如:[root@openstack_1 /]# ls -l    # -l 就是ls命令里的一个选项参数

具体用法

输出:

[root@iz home]# /usr/bin/python3 2019.py --help

usage: 2019.py [-h] [-a PARA] [-b PARB]

喂我两个数字,我就吐出他们的积

optional arguments:

  -h, --help            show this help message and exit

  -a PARA, --ParA PARA  我是A

  -b PARB, --ParB PARB  我是B

[root@iz home]# /usr/bin/python3 2019.py -h

usage: 2019.py [-h] [-a PARA] [-b PARB]

喂我两个数字,我就吐出他们的积

optional arguments:

  -h, --help            show this help message and exit

  -a PARA, --ParA PARA  我是A

  -b PARB, --ParB PARB  我是B

[root@iz home]# /usr/bin/python3 2019.py -a 3 -b 4

我只吃到了A,它是 3

我只吃到了B,它是 4

啊,两个都吃到啦!积是12

想要了解更多,请查件官档:https://docs.python.org/3/howto/argparse.html#introducing-positional-arguments

你可能感兴趣的:(python argparse模块)