不知道大家有没有发现,最近给大家分享的Python
项目的使用文档用的都是Python
内置的argparse
模块。
今天给大家分享下该模块的使用。
大家在使用命令的时候,一般都会用-h
查看命令帮助文档。
如:用rm -h
查看如何删除文件
rm -h
再比如,用pip -h
查看如何安装Python
包
pip -h
可以发现,这俩命令的帮助文档在格式上有些相似,这说明命令行的帮助文档都遵循一定的套路。
只要有套路,肯定就有相应的模块方便我们使用。这里所说的模块就是文章开头提到的argparse
。
下面我来分享下argparse
用法,给程序加上专业的说明文档。
首先,我们模仿pip
命令,创建只包含一个必选参数的命令
import argparse
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('command', help='执行的命令,install,uninstall')
args = parser.parse_args()
if args.command == 'install':
print('安装python包')
上面代码只有一个必须参数command
,用-h
查看帮助文档
python my_pip.py -h
模块会帮助我们自动生成帮助文档。
上述代码中,我们只实现了install
命令,我们可以执行一下,看看效果
python my_pip.py install
除了必选参数,我们还可以在parser
中增加可选参数。
import argparse
if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('command', help='执行的命令,install,uninstall')
parser.add_argument('-i', default='https://pypi.org/simple', help='安装包镜像')
parser.add_argument('--timeout', default='60', help='设置超时时间')
parser.add_argument('-V', '--version', action='version', help='查看版本', version='1.2.1')
args = parser.parse_args()
if args.command == 'install':
print('安装python包')
print(args.i)
print(args.timeout)
可选参数以-
或--
开头。
如果add_argument
函数里既有-
参数也有--
参数,说明它俩是等价的,如:-V
和--version
都是用来查看版本。
用-h
参数再来看下帮助文档
python my_pip.py -h
执行一下看看效果
python my_pip.py install -i xxx.com --timeout 3
执行install
命令式,增加了两个可选参数-i
和--version
,用来指定安装包地址和网络超时时间。
这两个参数都有设置默认值,执行命令时如果不加该参数,会使用默认值。
python my_pip.py install
最后,-V
和--version
用来查看当前程序的版本,add_argument
中指定了action
参数,表明使用该参数后执行的动作是查看版本。参数version=1.2.1
就是要返回的版本值。
python my_pip.py --version
或
python my_pip.py -V
action
的取值除了有version
外,还有其他取值,含义都比较简单,大家可以去官网查阅。
add_argument
函数还有一个比较常见的参数是type
,用来指定参数的数据类型。
有了argparse
模块可以帮我们快速创建程序帮助文档,使用起来非常简单,后续大家写程序就可以直接用起来啦。
以上就是本次分享的所有内容,如果你觉得文章还不错,欢迎关注公众号:Python编程学习圈,每日干货分享,发送“J”还可领取大量学习资料。或是前往编程学习网,了解更多编程技术知识。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。