在一個項目中,我看到下面的使用add_argument()
:Python argparse,add_argument,type = <some function>而不是int?
make_arg_instance
parser = argparse.ArgumentParser()
parser.add_argument("--somearg",type=make_arg_instance,help='blahblahblah')
args = parser.parse_args()
i = args.somearg.somefunction()
是定義一個函數爲:
def make_arg_instance():
somearg = SomeClassName()
return somearg
看來參數「somearg」是class
對象,而不是int
這就是爲什麼後面調用方法的原因,如i = args.somearg.somefunction()
。
在我所見過的參數類型最教程總是int
因此有人能簡要介紹一下如何添加class
型或大於int
其他任何類型的參數?謝謝!
當然'make_arg_instance()'接受一個參數,它不會是一個帶有0個參數的函數。 –