码迷,mamicode.com
首页 > 编程语言 > 详细

python之命令行解析工具argparse

时间:2014-08-22 12:08:56      阅读:234      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   color   io   文件   ar   

以前写python的时候都会自己在文件开头写一个usgae函数,用来加上各种注释,给用这个脚本的人提供帮助文档。

今天才知道原来python已经有一个自带的命令行解析工具argparse,用了一下,效果还不错。

argparse的官方文档请看 https://docs.python.org/2/howto/argparse.html#id1

from argparse import ArgumentParser

p = ArgumentParser(usage=it is usage tip, description=this is a test)
p.add_argument(--one, default=1, type=int,  help=the first argument)
args = p.parse_args()
print args

运行这个脚本test.py.

python test.py -h

输出:

usage: it is usage tip

this is a test

optional arguments:
  -h, --help  show this help message and exit
  --one ONE   the first argument

python test.py --one  8

 输出:

 Namespace(one=8)

可以看到argparse自动给程序加上了-h的选项,最后p.parse_args()得到的是你运行脚本时输入的参数。

如果我们需要用这些参数要怎么办呢,可以通过vars()转换把Namespace转换成dict。

from argparse import ArgumentParser

p = ArgumentParser(usage=it is usage tip, description=this is a test)
p.add_argument(--one, default=1, type=int,  help=the first argument)
p.add_argument(--two, default=hello, type=str, help=the second argument)

args = p.parse_args()
print args
mydict = vars(args)
print mydict
print mydict[two]

运行test.py.

python test.py --one 8  --two good

输出:

Namespace(one=8, two=‘good‘)
{‘two‘: ‘good‘, ‘one‘: 8}
good

python之命令行解析工具argparse,布布扣,bubuko.com

python之命令行解析工具argparse

标签:des   style   blog   http   color   io   文件   ar   

原文地址:http://www.cnblogs.com/streakingBird/p/3928756.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!