在有命令组并且每个子命令都可能引发异常的情况下,我怎样才能在一个地方一起处理它们?
给出下面的例子:
import click
@click.group()
def cli():
pass
@cli.command()
def foo():
pass
if __name__ == '__main__':
cli()
两者都cli
可以foo
加注。我知道一种可能的解决方案是放在try-except
从句中cli()
。if
但是,当您分发包时,这不起作用。在setup.py中,您必须指定一个入口点(在本例中为cli
)。该if
子句不会被执行。