如果通过使用自定义选项类将列表格式化为python列表的字符串文字,则可以强制单击以获取多个列表参数:
自定义类:
import click
import ast
class PythonLiteralOption...self, ctx, value):
try:
return ast.literal_eval(value)
except:
raise click.BadParameter(value)
该类将使用Python...的Abstract Syntax Tree模块将参数解析为python文字....自定义类用法:
要使用自定义类,请将cls参数传递给@ click.option()装饰器,如:
@click.option('--option1', cls=PythonLiteralOption,...这是有效的,因为click是一个设计良好的OO框架. @ click.option()装饰器通常实例化click.Option对象,但允许使用cls参数覆盖此行为.因此,从我们自己的类中继承click.Option