首先是关于-h/--help参数的设置

description:位于help信息前,可用于描述help
prog:描述help信息中程序的名称
epilog:位于help信息后
usage:描述程序的用途
add_help:默认为True,设为False后,就不能显示help信息了,执行-h/--help将会报错
conflict_handler:解决参数冲突
prefix_chars:参数前缀,默认为"-"
fromfile_prefix_chars:设置前缀字符,放在文件名之前,对文件里的参数进行读取和执行
argument_default:参数的全局默认值

description/epilog

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import argparse
parser = argparse.ArgumentParser(description="The Help Of Python")
parser.add_argument("-t","--thread",help="Thread Run",action="store_true")
args = parser.parse_args()
if args.thread:
print(args)
else:
print("Error")

执行参数-h

运行结果

prog/usage

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import argparse
parser = argparse.ArgumentParser(description="The Help Of Python",epilog="End Of Help",usage="Python Run Thread")
parser.add_argument("-t","--thread",help="Thread Run",action="store_true")
args = parser.parse_args()
if args.thread:
print(args)
else:
print("Error")

运行结果

默认的为

如果没有设置prog和usage则显示默认的,prog和usage都设置的话,显示usage的

add_help

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import argparse
parser = argparse.ArgumentParser(description="The Help Of Python",epilog="End Of Help",add_help=False)
parser.add_argument("-t","--thread",help="Thread Run",action="store_true")
args = parser.parse_args()
if args.thread:
print(args)
else:
print("Error")

运行结果

conflict_handler

当有参数重复的时候,程序会报错,把conflict_handler设置为resovle就可以解决

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import argparse
parser = argparse.ArgumentParser(description="The Help Of Python",epilog="End Of Help")
parser.add_argument("-t","--thread",help="Thread Run",action="store_true")
parser.add_argument("-t","--thread",help="Thread Run(2)",action="store_true")
args = parser.parse_args()
if args.thread:
print(args)
else:
print("Error")

运行,报错

给argparse.ArgumentParser()添加conflict_handler="resolve"

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" import argparse
parser = argparse.ArgumentParser(description="The Help Of Python",epilog="End Of Help",conflict_handler="resolve")
parser.add_argument("-t","--thread",help="Thread Run",action="store_true")
parser.add_argument("-t","--thread",help="Thread Run(2)",action="store_true")
args = parser.parse_args()
if args.thread:
print(args)
else:
print("Error")

运行结果

原先的-t/--thread参数被覆盖

Python命令模块argparse学习笔记(一)的更多相关文章

  1. Python命令模块argparse学习笔记(二)

    argparse模块可以设置两种命令参数,一个是位置参数,一个是命令参数 位置参数 import argparse parser = argparse.ArgumentParser(descripti ...

  2. Python命令模块argparse学习笔记(四)

    默认参数 ArgumentParser.set_defaults(**kwargs) set_defaults()可以设置一些参数的默认值 >>> parser = argparse ...

  3. Python命令模块argparse学习笔记(三)

    参数组 ArgumentParser.add_argument_group(title=None, description=None) 默认情况下,当显示帮助消息时,ArgumentParser将命令 ...

  4. $《利用Python进行数据分析》学习笔记系列——IPython

    本文主要介绍IPython这样一个交互工具的基本用法. 1. 简介 IPython是<利用Python进行数据分析>一书中主要用到的Python开发环境,简单来说是对原生python交互环 ...

  5. FastJson远程命令执行漏洞学习笔记

    FastJson远程命令执行漏洞学习笔记 Fastjson简介 fastjson用于将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean.fastjson.ja ...

  6. Python 开发与接口测试学习笔记

    这是我跟着虫师学习中积累下来的学习笔记,写得比较简单,适合想学习Python开发与接口测试的初学者学习. 一.开发投票系统 1.参考官网文档,创建投票系统. https://docs.djangopr ...

  7. python的文件处理学习笔记

    python的文件处理函数是open() 以下主要是关于这个函数的一些学习笔记 1.文件处理离不开编码 要注意的是文件打开时的编码和文件保存时的编码的统一,这样才能保证你打开的文件不会存在乱码 总结: ...

  8. Python框架之Django学习笔记(十七)

    Django框架之表单(续二) 今天的这篇博客将是Django学习笔记博客的最后一篇,基本每周最少一篇的Django框架学习,坚持到今天也实属不易,当然了,这个框架的学习仅仅是Django框架的基础部 ...

  9. 《用Python写爬虫》学习笔记(二)编写第一个网络爬虫

    1.首先,下载网页使用Python的urllib2模块,或者Python HTTP模块request来实现 urllib2会出现问题,解决方法1.重试下载(设置下载次数) 2.设置用户代理 2.其次, ...

随机推荐

  1. 基于canvas与原生JS的H5动画引擎

    前一段时间项目组里有一些H5动画的需求,由于没有专业的前端人员,便交由我这个做后台的研究相关的H5动画技术. 通过初步调研,H5动画的实现大概有以下几种方式: 1.基于css实现 这种方式比较简单易学 ...

  2. java基础(8)-集合类

    增强for循环 /* *增强for循环 * for(元素类型 变量:数据或Collection集合){ * 使用变量即可,该变量就是元素 * } * 优点:简化了数组和集合的遍历 * 缺点:增强for ...

  3. HDU 5884 Sort(2016年青岛网络赛 G 二分+贪心+小优化)

    好题 题意:给你n<=100000个数,每个数范围[0,1000],然后给你一个最大的代价T,每次最多合并k个数成为一个数,代价为k个数的总和.问最后合成1个数的总代价不大于T的最小k 题解:我 ...

  4. 基于组的策略(GBP)开启新型网络设计时代

    在传统物理网络环境下,划分VLAN,分配网段,设置路由是个网工应该熟悉的内容.在SDN环境下,比如neutron虚拟网络,我们用API创建网络,子网,虚拟路由器,负载均衡和防火墙,这些还是太网络化了. ...

  5. Spring Cloud Ribbon实现客户端负载均衡

    1.构建microservice-consumer-movie-ribbon项目,在pom.xml中引入ribbon依赖 在引入Eureka依赖的时候,默认里面含有ribbon依赖 2.添加@Load ...

  6. review29

    数组流 流的源和目的地除了可以是文件外,还可以是计算机内存. 1.字节数组流 字节数组输入流ByteArrayInputStream和字节数组输出流ByteArrayOutputStream分别使用字 ...

  7. CSS之动态相册

    注释还是比较详细的,所以我就不一一再说明了.--->运行效果图<--- (点击之前温馨提示一下:此picture是我自己的照片,本来不想拿出来的,后来觉得反正不会有很多人看到而且也没人认识 ...

  8. spring: 使用profiles选择数据源(结合嵌入式数据源EmbeddedDatabaseBuilder)

    一般需要在不同的环境(日常环境.性能测试环境.预发环境和生产环境等等)中配置不同的数据源,例如,在开发时非常适合使用嵌入式数据源.在QA环境中比较适合使用DBCP的BasicDataSource.在生 ...

  9. 关于设置UITableView的背景图片

    在UITableViewController中,要设置UITableView的背景图片,以前常用的方法是使用backgroundcolor属性,这个属性可以通过UIImage来获取,但最近发现这个方法 ...

  10. 2 Python 基本语法

    编译型与解释型. 编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快; 而解释器则是只在执行程序时,才一条一条的解释成机器语言给 ...