Python2.7-argparse

argparse 模塊,用於方便地編寫用戶友好的命令行接口,能夠自動生成幫助信息,用法信息和錯誤處理html

一、模塊對象python

1.1 ArgumentParser 對象app

1.1.1 初始化構建類ArgumentParser(prog=None, usage=None, description=None, epilog=None, parents=[], formatter_class=argparse.HelpFormatter, prefix_chars='-', fromfile_prefix_chars=None, argument_default=None, conflict_handler='error', add_help=True)ui

參數設置:
prog:程序的名字,默認爲 sys.argv[0],即 py 文件名字
usage:一個描述程序的用法的字符串,默認包含全部加進去的參數
description:最經常使用的屬性,簡單描述程序的用處和用法,在 usage 和具體幫助之間顯示,默認爲 none
epilog:放在幫助後面的字符串,默認爲 none
parents:一個 ArgumentParser 對象的列表,這些對象裏的參數也會被包含進來,用於有許多共享的參數,相似繼承,須要把這些父對象的 add_help 屬性設爲 False
formatter_class:設置控制幫助信息輸出的類,默認會自動換行,有
      argparse.RawDescriptionHelpFormatter:不自動換行,怎麼輸入怎麼輸出
      argparse.RawTextHelpFormatter:保留全部空格,但會把多個連續換行合成爲一個
      argparse.ArgumentDefaultsHelpFormatter:在幫助信息里加上默認值
prefix_chars:控制命令行命令前的符號,默認 ‘-‘,能夠自定義
fromfile_prefix_chars:當程序所需參數較多時能夠從文件讀入,這時能夠設置這個屬性識別文件,在指定字符後的參數就視爲文件打開讀取參數,默認爲 None
argument_default:參數的全局默認屬性,默認爲 None
conflict_handler:設置爲‘resolve’能夠覆蓋相同名字的操做,不然會報錯,通常不使用
add_help:添加 -h/--help 操做,默認 Truespa

1.1.2 實例方法命令行

add_argument(name or flags...[, action][, nargs][, const][, default][, type][, choices][, required][, help][, metavar][, dest]):
參數設置:
name or flags:若是添加可選參數,則在前面加上‘-’或是自定義的前綴字符(prefix_chars),不然認爲是定位參數(positional)即必須的參數
action:設置此參數被調用時的操做,有'store','store_const','store_true','store_false','append','append_const','count','help','version',能夠自定義
nargs:每一個操做須要的參數個數,有 N,'?','*','+',argparse.REMAINDER
const:設置不從命令行讀取可是後續操做須要的常數,默認爲 none
default:設置能夠不從命令行讀取的默認值,默認爲 none
type:轉換命令行的字符串至指定格式,支持全部內置類型,還有文件操做 argparse.FileType('r,w'),全部自定義的以一個字符串爲參數返回轉換後的值的可調用對象均可以
choices:包含全部支持的參數,不在這個範圍內會報錯,能夠控制輸入
required:設置可選參數是否爲必選,避免使用
help:設置幫助信息,支持格式化字符串,argparse.SUPPRESS 會在顯示幫助時隱藏對應的操做
metavar:設置幫助信息裏各個參數的別名
dest:設置命令行裏得到的參數存放到哪一個屬性中orm

parse_args(args=None, namespace=None):
參數設置:
args:要解析的字符串列表,默認從 sys.argv 得到
namespace:存放得到的屬性的一個對象htm

add_subparsers([title][, description][, prog][, parser_class][, action][, option_string][, dest][, help][, metavar]):一般不設置參數,返回一個有特定操做的對象
參數設置:
title:幫助中的名字
description:幫助中的描述
prog:使用信息
parser_class:指定從哪一個父類中建立子對象
action、dest、help、metavar:同上對象

set_defaults(**kwargs):設置默認值
get_default(dest):得到 dest 的默認值
print_usage(file=None):輸出 usage 信息
print_help(file=None):輸出幫助信息繼承

相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息