第十四章:应用构建模块-argparse:命令行选项和参数解析-建立解析器(定义参数)(解析命令行)

第14章 应用构建模块
14.1 argparse:命令行选项和参数解析
argparse模块包含一些工具来构建啊命令行参数和选项处理器。这是在Python2.7中增加的,以取代optparse。argparse的实现支持一些新特性,其中有些特性可能无法轻松地增加到optparse,有些特性则要求API有变化,而这些改变不是向后兼容的。所以,干脆在库中增加了一个新的模块。现在optparse已经废弃。

14.1.1 建立解析器
使用argparse的第一步是创建一个解析器对象,并告诉它需要什么参数。程序运行时可以使用这个解析器处理命令行参数。解析器类(ArgumentParser)的构造函数可以取多个参数,来建立程序帮助文本中使用的描述以及其他全局行为或设置。

import argparse

parser = argparse.ArgumentParser(
    description='This is a PyMOTW sample program',
    )

14.1.2 定义参数
argparse是一个完整的参数处理库。参数可以触发不同的动作,由add_argument()的action参数指定。支持的动作包括存储参数(单独存储,或者作为列表的一部分存储),遇到这个参数时存储一个常量值(包括对Boolean分支的true/false值的特殊处理),统计遇到一个参数的次数,以及调用一个回调来使用定制处理指令。
默认动作是存储参数值。如果提供了一个类型,那么存储值之前要将值转换为该类型。如果提供了dest参数,那么解析命令行参数时要用这个名来保存值。

14.1.3 解析命令行
定义了所有参数之后,可以将一个参数串序列传递到parse_args()以解析命令行。默认地,参数由sys.argv[1:]得到,不过也可以使用任意的串列表。选项使用GNU/POSIX语法处理,所以选项和参数值可以混合出现在序列中。parse_args()的返回值是一个包含命令参数的Namespace。这个对象会保存参数值(作为属性),所以如果参数的dest被设置为"myoption",那么便可以用args.myoption访问这个值。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值