Python的argparse库使用详解


Posted in Python onOctober 09, 2018

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

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

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

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

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

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

基本使用

import argparse

# 创建解析器
parser = argparse.ArgumentParser(description = 'This is a test')
parser.parse_args()

可以在shell中测试:

$ python test.py --help
...

添加参数

import argparse

parser = argparse.ArgumentParser(description = 'This is a test')
parser.add_argument("-p","--port",help='increase output port') # 定义了可选参数-p和--port,赋值后,其值保存在args.port中(其值都是保存在最后一个定义的参数中)
args = parser.parse_args()
print(args.echo)

argparse.ArgumentParser()方法参数须知:一般我们只选择用description

          prog=None     - 程序名

          description=None,    - help时显示的开始文字

           epilog=None,     - help时显示的结尾文字

          parents=[],        -若与其他参数的一些内容一样,可以继承

          formatter_class=argparse.HelpFormatter,     - 自定义帮助信息的格式

          prefix_chars='-',    - 命令的前缀,默认是‘-'

          fromfile_prefix_chars=None,     - 命令行参数从文件中读取

          argument_default=None,    - 设置一个全局的选项缺省值,一般每个选项单独设置

          conflict_handler='error',     - 定义两个add_argument中添加的选项名字发生冲突时怎么处理,默认处理是抛出异常

          add_help=True    - 是否增加-h/--help选项,默认是True)

add_argument()方法参数须知:

    name or flags...    - 必选,指定参数的形式,一般写两个,一个短参数,一个长参数

使用时候:

$ python test.py -p 50
或
$ python test.py --port 50

指定类型

我们也可以在添加参数的时候指定其类型。

import argparse

parser = argparse.ArgumentParser(description = 'This is a test')
parser.add_argument("square",help="display a given number",type=int) # 指定给square的参数为int类型

可选参数

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("-v", help="increase output verbosity")
args = parser.parse_args()
if args.v:
  print("v turned on")

使用:

$ python test.py -v any

文档

更多应用请百度或者查文档:https://docs.python.org/3/library/argparse.html#module-argparse

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python 实现上传图片并预览的3种方法(推荐)
Jul 14 Python
浅谈python for循环的巧妙运用(迭代、列表生成式)
Sep 26 Python
Python使用Turtle模块绘制五星红旗代码示例
Dec 11 Python
python,Django实现的淘宝客登录功能示例
Jun 12 Python
对Django中内置的User模型实例详解
Aug 16 Python
使用Tkinter制作信息提示框
Feb 18 Python
使用Keras画神经网络准确性图教程
Jun 15 Python
多个版本的python共存时使用pip的正确做法
Oct 26 Python
python反爬虫方法的优缺点分析
Nov 25 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
Jan 13 Python
教你怎么用Python实现GIF动图的提取及合成
Jun 15 Python
Python 恐龙跑跑小游戏实现流程
Feb 15 Python
详解Python3中的迭代器和生成器及其区别
Oct 09 #Python
不知道这5种下划线的含义,你就不算真的会Python!
Oct 09 #Python
详解利用django中间件django.middleware.csrf.CsrfViewMiddleware防止csrf攻击
Oct 09 #Python
详解如何将python3.6软件的py文件打包成exe程序
Oct 09 #Python
让代码变得更易维护的7个Python库
Oct 09 #Python
windows下cx_Freeze生成Python可执行程序的详细步骤
Oct 09 #Python
Python打包方法Pyinstaller的使用
Oct 09 #Python
You might like
怎样在php中使用PDF文档功能
2006/10/09 PHP
用来解析.htpasswd文件的PHP类
2012/09/05 PHP
PHP实现根据设备类型自动跳转相应页面的方法
2014/07/24 PHP
Java中final关键字详解
2015/08/10 PHP
php 参数过滤、数据过滤详解
2015/10/26 PHP
WordPress主题制作之模板文件的引入方法
2015/12/28 PHP
php图片添加文字水印实现代码
2016/03/15 PHP
php中static和const关键字用法分析
2016/12/07 PHP
使用Javascript和DOM Interfaces来处理HTML
2006/10/09 Javascript
List all the Databases on a SQL Server
2007/06/21 Javascript
JavaScript 继承详解 第一篇
2009/08/30 Javascript
cookie 最近浏览记录(中文escape转码)具体实现
2013/06/08 Javascript
js实现数组去重、判断数组以及对象中的内容是否相同
2013/11/29 Javascript
jQuery异步验证用户名是否存在示例代码
2014/05/21 Javascript
IE下使用jQuery重置iframe地址时内存泄露问题解决办法
2015/02/05 Javascript
canvas的神奇用法
2017/02/03 Javascript
原生js实现瀑布流布局
2017/03/08 Javascript
微信小程序五星评分效果实现代码
2017/04/06 Javascript
vue 封装自定义组件之tabal列表编辑单元格组件实例代码
2017/09/07 Javascript
基于匀速运动的实例讲解(侧边栏,淡入淡出)
2017/10/17 Javascript
vue中v-cloak解决刷新或者加载出现闪烁问题(显示变量)
2018/04/20 Javascript
Node.js 使用jade模板引擎的示例
2018/05/11 Javascript
nodejs初始化init的示例代码
2018/10/10 NodeJs
微信小程序-form表单提交代码实例
2019/04/29 Javascript
js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例
2020/01/26 Javascript
JavaScript编码小技巧分享
2020/09/17 Javascript
python网络编程学习笔记(五):socket的一些补充
2014/06/09 Python
用Python将结果保存为xlsx的方法
2019/01/28 Python
Python PIL读取的图像发生自动旋转的实现方法
2019/07/05 Python
TensorFlow车牌识别完整版代码(含车牌数据集)
2019/08/05 Python
python多线程实现TCP服务端
2019/09/03 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
2019/12/17 Python
解决pycharm同一目录下无法import其他文件
2020/02/12 Python
英语演讲稿范文
2014/01/03 职场文书
2014年五一劳动节社区活动总结
2014/04/14 职场文书
可可西里观后感
2015/06/08 职场文书