如何在Python中使用click.option()接收一串句子?

How to receive a string of sentences using click.option() in Python?

我正在尝试创建一个简单的命令行界面来维护待办任务。
我知道我可以使用 click.argument() 从用户那里获取字符串句子,但我想使用 click.option().

获得类似的功能
@click.command()
@click.option('-a', '--add', type=click.STRING, help='Task you want to add')
@click.option('-rm', '--remove', type=click.INT, help='ID of task you want to remove')
def cli(add, remove):
    if add:
        add_task(add)
    elif remove:
        remove_task(remove)
    else:
        list()

根据上面的脚本:
todo -a Hello World !!
只获取字符串 "Hello",但我想要完整的句子。

根据文档,您需要做的就是添加 nargs=<the number you want> 例如:

@click.option('-a', '--add',nargs=2, type=click.STRING, help='Task you want to add')

或者您总是可以 运行 编写这样的脚本:

todo --add="Hello World !!"