亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python命令行參數(shù)解析模塊optparse使用實(shí)例

系統(tǒng) 1962 0

示例

復(fù)制代碼 代碼如下:

from optparse import OptionParser
[...]
def main():
??? usage = "usage: %prog [options] arg"
??? parser = OptionParser(usage)
??? parser.add_option("-f", "--file", dest="filename",
????????????????????? help="read data from FILENAME")
??? parser.add_option("-v", "--verbose",
????????????????????? action="store_true", dest="verbose")
??? parser.add_option("-q", "--quiet",
????????????????????? action="store_false", dest="verbose")
??? [...]
??? (options, args) = parser.parse_args()
??? if len(args) != 1:
??????? parser.error("incorrect number of arguments")
??? if options.verbose:
??????? print "reading %s..." % options.filename
??? [...]

if __name__ == "__main__":
??? main()


增加選項(xiàng)(add_option())
復(fù)制代碼 代碼如下:

OptionParser.add_option(option)
OptionParser.add_option(*opt_str, attr=value, ...)

定義短選項(xiàng)
復(fù)制代碼 代碼如下:

parser.add_option(“-f”, attr=value, …)

定義長(zhǎng)選項(xiàng)
復(fù)制代碼 代碼如下:

parser.add_option(“?Cfoo”, attr=value, …)

如果定義
復(fù)制代碼 代碼如下:

?parser.add_option("-f", "--file", action="store", type="string", dest="filename")

命令行格式可以有以下形式
復(fù)制代碼 代碼如下:

-ffoo
-f foo
--file=foo
--file foo

解析后結(jié)果
復(fù)制代碼 代碼如下:

options.filename = “foo”

解析(parse_args())
復(fù)制代碼 代碼如下:

(options, args) = parser.parse_args()

options 解析后的參數(shù),以字典形式保存
args 不能解析的參數(shù),以列表形式保存

行為(action)

●store 默認(rèn)行為,保存值到dest
●“store_const” 保存常量
●“append” append this option's argument to a list
●“count” increment a counter by one
●“callback” call a specified function

設(shè)置默認(rèn)值(default)

復(fù)制代碼 代碼如下:

parser.add_option("-v", action="store_true", dest="verbose", default=True)
parser.set_defaults(verbose=True)

生成幫助提示(help)

提供help選項(xiàng)即可,可以用parser.print_help()打印出來

復(fù)制代碼 代碼如下:

parser.add_option(“-f”, “?Cfile”, dest=”filename”,help=”write report to FILE”, metavar=”FILE”)

設(shè)置boolean值

支持store_true和store_false兩個(gè)行為

復(fù)制代碼 代碼如下:

parser.add_option("-v", action="store_true", dest="verbose")
parser.add_option("-q", action="store_false", dest="verbose")

如果遇到-v,verbose=True;如果遇到-q,verbose=False

錯(cuò)誤處理

復(fù)制代碼 代碼如下:

(options, args) = parser.parse_args()
[...]
if options.a and options.b:
??? parser.error("options -a and -b are mutually exclusive")

選項(xiàng)組(Grouping Options)

格式如下

class optparse.OptionGroup(parser, title, description=None)

復(fù)制代碼 代碼如下:

group = OptionGroup(parser, "Dangerous Options",
??????????????????? "Caution: use these options at your own risk.? "
??????????????????? "It is believed that some of them bite.")
group.add_option("-g", action="store_true", help="Group option.")
parser.add_option_group(group)

提示結(jié)果如下
復(fù)制代碼 代碼如下:

Usage: [options] arg1 arg2

Options:
? -h, --help??????????? show this help message and exit
? -v, --verbose???????? make lots of noise [default]
? -q, --quiet?????????? be vewwy quiet (I'm hunting wabbits)
? -f FILE, --filename=FILE
??????????????????????? write output to FILE
? -m MODE, --mode=MODE? interaction mode: novice, intermediate, or
??????????????????????? expert [default: intermediate]

? Dangerous Options:
??? Caution: use these options at your own risk.? It is believed that some
??? of them bite.

??? -g????????????????? Group option.


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 久久澳门 | videoxxoo欧美老师 | 午夜噜噜噜私人影院在线播放 | 日韩欧美亚洲精品 | www色综合 | 欧美色视频超清在线观看 | 国产精品视频专区 | 99久久亚洲综合精品网站 | 国产成人综合精品一区 | 五月婷视频 | 99久久久国产精品免费牛牛四川 | 免费澳门一级毛片 | 国产精品夜夜春夜夜爽久久 | 妞干网中文字幕 | 久久影院在线观看 | 国产日韩欧美亚洲综合首页 | 日韩欧美aa级草草免费视频 | 日本护士a做爰免费观看 | 香蕉色香蕉在线视频 | 精品久久久久久中文字幕专区 | 91嫩草国产线免费观看 | 手机国产日韩高清免费看片 | 久久美剧 | 久久一本精品 | 久久天天躁狠狠躁夜夜中文字幕 | 日本道在线视频 | 神马影院我不卡手机 | 手机看片日韩日韩国产在线看 | 精品久久久在线观看 | 夜夜摸夜夜操 | 精品小视频在线 | 欧美大片天天免费看视频 | 又粗又大的机巴好爽视频视频 | aaaaaaa毛片 | 最新中文字幕日本 | 视频一区在线播放 | 国产成人欧美视频在线 | 怡红院免费va男人的天堂 | 日韩视频一区二区在线观看 | 久久亚洲日本不卡一区二区 | 久久久午夜影院 |