python--argparse超简入门

首先呢,argparse是一个命令行参数解析模块!
也就是说呢,它要运行在命令行下,嗯,就是命令行窗口这个页面。
在这里插入图片描述来,接下来做个小测试

首先,新建一个文件,命名为Test.py,然后敲入如下代码…

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

接下来,我们到这个项目的目录下运行下面的命令

python Test.py --help

然后命令行会打印下面的结果!
在这里插入图片描述这个时候,程序已经能够给我们一定的反馈啦~~~ (-h这个参数表示帮助信息, 现在由于我们还没有做进一步的工作,所以它只有-h这一个命令啦~)

现在,让我们添加一个参数吧~ 修改代码至下面这个样子

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("echo")
args = parser.parse_args()
print(args.echo)

接下来,我们到这个项目的目录下分别运行下面的命令看下效果吧~~

python Test.py
python Test.py --help
python Test.py Wow!

biu,结果在这里~
在这里插入图片描述
首先第一条命令,反馈给我们了一个错误信息(error: the following arguments are required: echo)告诉我们缺少一个叫做echo的参数。显然这个参数就是我们刚刚在代码中创建的那个~
接下里,我们来看第二条命令,我们help了这个文件(相当于我们在问“哎呀,这个文件我要怎么用呀”,然后程序一本正经的回答“嗯,你需要给我一个叫做echo的参数”)
知道了怎么使用了,接下来就是正确的使用Test.py这个文件啦。于是我们有了第三个命令,第三个命令中,Wow! 就是我们想要传给程序的参数。回看代码,我们使用了print(args.echo) 命令来打印echo的信息,所以最后程序也对我们喊Wow!

接下来我们就可以为所欲为了A.A,调整各种参数看看会有什么神奇的现象发生诶~
首先,我们可以为Test.py这个脚本文件创建一些描述信息。

parser = argparse.ArgumentParser()
parser.description='叫我出来干嘛!'

当输入 –help 时就会跳出来啦
在这里插入图片描述
或者输入两个数字计算他们的乘积

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)

在这里插入图片描述如果我们不想输入某些参数怎么办呀?
简单!直接在他们名字前添加–就好啦~ 我们对刚刚的程序做个小修改

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()
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)

不过这次由于有些参数不确定是否输入,所以在输入参数的时候我们需要告诉程序我们想要对哪个参数赋值~
在这里插入图片描述每次都要输入 –ParA或者 –ParB好累啊有木有… 好懒的 T^T,所以我们再做些修改吧,尽可能的偷个懒=-=

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)

现在,我们就可以用 -a或者 -b输入参数啦~似乎也没有轻松多少…都是骗人的T^T
在这里插入图片描述
END…

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章