argparse:如何调用方法而不是函数?

San*_*nda 1 python argparse

我在我的python程序中使用argparse,我想在运行我的软件时调用一个方法:

$ python __init__.py foo
Run Code Online (Sandbox Code Playgroud)

如果我想调用函数而不是方法,这很容易:

def foo(args):
    pass

def main():
    foo_parser.set_defaults(func=foo)

if __name__ == "__main__":
    main()
Run Code Online (Sandbox Code Playgroud)

如何用"func = MyClass.my_method"替换"func = foo"?

Len*_*bro 5

您只需参考方法而不是函数.对.就这么简单.代替

 func = foo
Run Code Online (Sandbox Code Playgroud)

你做

 func = theobject.foo
Run Code Online (Sandbox Code Playgroud)

完成!