14
是否可以添加一個自定義'使用'功能,而不是由python argparse提供的默認使用信息。在argparse中定製'使用'功能?
示例代碼:
parser = argparse.ArgumentParser(description='Sample argparse py')
parser.add_argument('-arg_1',type=int, custom_usage_funct('with_some_message'))
output = parser.parse_args()
def custom_usage_funct(str):
print str
print '''
Usage: program.py
[-a, Pass argument a]
[-b, Pass argument b]
[-c, Pass argument c]
[-d, Pass argument d]
comment
more comment
'''
如果傳遞的參數是一個字符串值作爲,而不是整數,則程序應該調用一個錯誤信息定製使用功能「請提供一個整數值」
有效的論據
program.py -arg_1 123
無效參數
program.py -arg_1 abc
Please provide an integer value
Usage: program.py
[-a, Pass argument a]
[-b, Pass argument b]
[-c, Pass argument c]
[-d, Pass argument d]
comment
more comment
是否可以根據參數輸入調用自定義函數?假設參數僅需要整數值,並且用戶輸入字符串值。然後自定義使用函數應該調用一個消息「參數只接受整數值」 – devav2
是的,你可以使用'action ='關鍵字參數來做到這一點。例子是[here](http://docs.python.org/2.7/library/argparse.html#action)。看到我編輯的答案。 –
你不需要使味精成爲一個功能。由於它返回一個字符串,而usage =接受一個字符串,所以你可以剪掉中間人。 –