Python 使用click包:将选项设置为`int'选项`

Python 使用click包:将选项设置为`int'选项`,python,click,Python,Click,我正在尝试进行单击。选项可以在数字0、1和2之间进行选择。我试过这个: @click.Option('--verbosity', default=1, type=click.Choice([0, 1, 2])) def f(): # ... pass 但是我得到了异常TypeError:sequence item 0:expected str instance,int found。我猜click只需要click.Choice中的字符串。有没有办法让它接受ints?我知道我可以在

我正在尝试进行
单击。选项
可以在数字
0
1
2
之间进行选择。我试过这个:

@click.Option('--verbosity', default=1, type=click.Choice([0, 1, 2]))
def f():
    # ...
    pass
但是我得到了异常
TypeError:sequence item 0:expected str instance,int found
。我猜
click
只需要
click.Choice
中的字符串。有没有办法让它接受ints?我知道我可以在收到int后手动转换为int,但是如果有一种惯用的方式来接收
int
选项,那就更好了。

您可以使用
内部页面(最小值=0,最大值=2)

class click.IntRange(min=None,max=None,climp=False)

参数 其工作原理类似于click.INT,但将值限制为适合 范围默认行为是,如果该值超出 范围,但也可以在两条边之间静默夹紧