欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

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

系統(tǒng) 2036 0

示例

復制代碼 代碼如下:

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()


增加選項(add_option())
復制代碼 代碼如下:

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

定義短選項
復制代碼 代碼如下:

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

定義長選項
復制代碼 代碼如下:

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

如果定義
復制代碼 代碼如下:

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

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

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

解析后結果
復制代碼 代碼如下:

options.filename = “foo”

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

(options, args) = parser.parse_args()

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

行為(action)

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

設置默認值(default)

復制代碼 代碼如下:

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

生成幫助提示(help)

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

復制代碼 代碼如下:

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

設置boolean值

支持store_true和store_false兩個行為

復制代碼 代碼如下:

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

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

錯誤處理

復制代碼 代碼如下:

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

選項組(Grouping Options)

格式如下

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

復制代碼 代碼如下:

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)

提示結果如下
復制代碼 代碼如下:

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.


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

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 免费一级毛片不卡在线播放 | 自拍偷拍亚洲一区 | 一区二区三区国产在线 | 国产女人与拘做受视频 | 国产又黄又猛又粗又爽的A片动漫 | 91在线观看视频 | 一级黄色一级片 | 亚洲一二三四2021不卡 | 色婷婷色综合激情国产日韩 | 亚洲精品国产网红在线 | 国产最新网址 | 精品在线| 亚洲一区二区三 | 亚洲在成人网在线看 | 日操夜干 | 精品综合在线 | 久久精品| 欧美日韩亚洲国内综合网俺 | 日韩亚洲欧美中文高清在线 | 两性仑乱视频 | www一区二区 | 亚欧乱色视频小说 | 日韩免费在线视频 | 五月天色网址 | 日本a v在线播放 | 另类视频在线观看 | 亚洲综人网 | 日韩在线电影 | 久久久久成人精品亚洲国产 | 亚洲国产视频网站 | 看片国产| 欧美天堂在线观看 | 国产精品一区二区免费 | 欧美成人手机在线视频 | 看一级毛片国产一级毛片 | 国产不卡免费视频 | 日韩精品在线播放 | 欧美 亚洲 另类 激情 另类 | 久久久在线视频 | 一区二区三区免费在线 | 免费在线国产视频 |