argparse是python标准库里面用来处理命令行参数的库,基本使用步骤如下:

1.import argparse    导入模块
2.parser = argparse.ArgumentParser()    创建一个解析对象
3.parser.add_argument()    向该对象中添加命令行参数和选项
4.args = parser.parse_args()    进行解析
5.arg = args.参数名1,2,...   获取参数1,2,...
测试代码:
import argparse

parser = argparse.ArgumentParser()  #创建实例
#添加参数
parser.add_argument('f') #必选参数1
parser.add_argument('-a',type=int) #可选参数2
parser.add_argument('-b',type=str) #可选参数3
parser.add_argument('-c','--c1',type=int,default=80) #可选参数4
parser.add_argument('--d',type=int,default=80) #可选参数5 args = parser.parse_args() #解析参数
print("参数1:{0},参数2:{1},参数3:{2},参数4:{3},参数5:{4}".format(args.f,args.a,args.b,args.c1,args.d)) #获取可选参数4值,需要用args.c1,不能用args.c,否则会报Attributes错

测试结果如下:

输入python temp.py,运行报错:缺少必选参数f

输入python temp.py ffff,运行成功

输入python temp.py ffff -a 10 -b 20 -c 30 -d 40,运行成功

输入python temp.py -a 10 -b 20 -c 30 -d 40 ffff,运行报错(必选参数,也是位置参数,不能放错位置)

输入python temp.py ffff -b 20  --d 40 -c 30 -a 10,将可选参数乱序,运行成功

输入python temp.py ffff -b 20  --d 40 --c1 30 -a 10,将 - c换成 --c1,运行成功

Python 命令行解析模块 —— argparse的更多相关文章

  1. python命令行解析模块--argparse

    python命令行解析模块--argparse 目录 简介 详解ArgumentParser方法 详解add_argument方法 参考文档: https://www.jianshu.com/p/aa ...

  2. python命令行解析工具argparse模块【1】

    argpaser是python中很好用的一个命令行解析模块,使用它我们可以很方便的创建用户友好型命令行程序.而且argparse会自动生成帮助信息和错误信息. 一.示例 例如下面的例子,从命令行中获取 ...

  3. Python 命令行解析工具 Argparse介绍

    最近在研究pathon的命令行解析工具,argparse,它是Python标准库中推荐使用的编写命令行程序的工具. 以前老是做UI程序,今天试了下命令行程序,感觉相当好,不用再花大把时间去研究界面问题 ...

  4. python命令行解析工具argparse模块【3】

    上一节,我们讲解了ArgumentParser对象,这一节我们将学习这个对象的add_argument()方法.         add_argument()方法的定义了如何解析一个命令行参数,每个参 ...

  5. python命令行解析工具argparse模块【2】

    上一节,我们简要的介绍了argparse的用法,接下来几节,将详细讲解其中的参数及用法,这一节我们讲解ArgumentParser对象. argparse.ArgumentParser([descri ...

  6. python命令行解析工具argparse模块【5】

            上一节我们学习了parse_args()的用法,这一节,我们将继续学习argparse的其他一些用法.         1.sub-commands子命令         argpar ...

  7. python命令行解析工具argparse模块【4】

            上一节我们讲解了add_argument()方法,这一节我们将学习parse_args()方法.          parse_args()方法的作用是解析命令行参数,并返回解析之后的 ...

  8. Python命令行解析库argparse

    2.7之后python不再对optparse模块进行扩展,python标准库推荐使用argparse模块对命令行进行解析. 1.example 有一道面试题:编写一个脚本main.py,使用方式如下: ...

  9. Python命令行解析库argparse(转)

    原文:http://www.cnblogs.com/linxiyue/p/3908623.html 2.7之后python不再对optparse模块进行扩展,python标准库推荐使用argparse ...

随机推荐

  1. python file对象测试数据的读写操作及OS模块介绍(四)

    import   from....import 引入模块 引入类 ①import 如果文件在lib下而且是python模块 :import 模块名. ②from....import from 包名.包 ...

  2. BZOJ3555 [Ctsc2014]企鹅QQ[暴力+字符串hash]

    菜到自闭,一道省选小水题都能给我做繁. 要求有一位不同,则对每个串每一位暴力枚举把这一位删掉,放一个分隔符,算一下hash,插表,相似的都应该会被插入同一个桶.最后把hash统计一下即可.复杂度$O( ...

  3. 【模板】manachar

    马拉车算法用于解决最长回文字串的一类问题,可以将时间复杂度降低为\(O(n)\),几乎达到了理论上的下界. 核心思想:将分奇偶讨论的情况转化成同一种情况(奇数). 下面介绍该算法需要用到的几点性质: ...

  4. spark 三种数据集的关系(一)

    Catalyst Optimizer: Dataset 数据集仅可用Scala或Java.但是,我们提供了以下上下文来更好地理解Spark 2.0的方向数据集是在2015年作为Apache Spark ...

  5. 2019年11月18日 JAVA期中考试 增删改查

    一.题目 石家庄铁道大学 青年志愿者服务网(20分)   1.项目需求: 为了适应社会主义市场经济发展的需要,推动青年志愿服务体系和多层次社会保障体系的建立和完善,促进青年健康成长,石家庄铁道大学急需 ...

  6. 【NOIP2017提高A组模拟9.5】心灵治愈

    题目 好吧,我表示比赛时完全看不懂题目 题目解释 良心的出题人为一道两三句可以讲清楚的题目,又写了一大坨恶心的解释. 容斥 其实题目就是有个数组a[1~n+1],已知a[n+1]=m,1<=a[ ...

  7. linux运维、架构之路-MongoDB单机部署

    一.MongoDB介绍 MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系型数据库和非关系 ...

  8. C# 时间格式转换

    DateTime dd =DateTime.Parse(temp[0]);  string aa = dd.ToShortDateString();

  9. Linux开机启动和登录时各个文件的执行顺序

    1.在Linux内核被加载后,第一个运行的程序便是/sbin/init 该文件会读取/etc/inittab文件,并依据此文件来进行初始化工作.其中/etc/inittab文件最主要的作用就是设定Li ...

  10. 复制表结构和数据SQL语句(转)

    http://www.cnblogs.com/zhengxu/articles/2206894.html 1.复制表结构及数据到新表 CREATE TABLE 新表 SELECT * FROM 旧表 ...