如何将重命名的变量用于点击选项?
How to use a renamed variable for a click option?
我想使用 click 指定一个选项,但我想访问另一个命名变量中的值。
这就是我所拥有的
@click.command()
@click.option(
"--all",
is_flag=True,
help="This will use all of it.",
)
def mycode(all):
...
但这会覆盖内置函数 all
。因此,为了避免我正在寻找一种方法,以便将不同的变量用于主要代码,即
@click.command()
@click.option(
"--all",
is_flag=True,
alias="use_all"
help="This will use all of it.",
)
def mycode(use_all):
...
但是 click.option 上的文档看起来非常 sparse/misses everything/I 我看错东西了?
那么怎么做呢?
我找到了一个解决方法,使用多个选项名称并将我们想要的那个作为第一个放在变量名称中。
import click
@click.command()
@click.option(
"--use-all",
"--all",
is_flag=True,
help="This will use all of it."
)
def mycode(use_all):
print(use_all)
按预期工作并生成此帮助文本:
Usage: so_test.py [OPTIONS]
Options:
--use-all, --all This will use all of it.
--help Show this message and exit.
显然不理想。我认为我们可以通过定义我们自己的 Option
class 并在 click.option
中传递 cls=CustomOptionClass
来添加它 - 但我没有看到任何关于如何进行的文档关于这样做。
我想使用 click 指定一个选项,但我想访问另一个命名变量中的值。
这就是我所拥有的
@click.command()
@click.option(
"--all",
is_flag=True,
help="This will use all of it.",
)
def mycode(all):
...
但这会覆盖内置函数 all
。因此,为了避免我正在寻找一种方法,以便将不同的变量用于主要代码,即
@click.command()
@click.option(
"--all",
is_flag=True,
alias="use_all"
help="This will use all of it.",
)
def mycode(use_all):
...
但是 click.option 上的文档看起来非常 sparse/misses everything/I 我看错东西了?
那么怎么做呢?
我找到了一个解决方法,使用多个选项名称并将我们想要的那个作为第一个放在变量名称中。
import click
@click.command()
@click.option(
"--use-all",
"--all",
is_flag=True,
help="This will use all of it."
)
def mycode(use_all):
print(use_all)
按预期工作并生成此帮助文本:
Usage: so_test.py [OPTIONS]
Options:
--use-all, --all This will use all of it.
--help Show this message and exit.
显然不理想。我认为我们可以通过定义我们自己的 Option
class 并在 click.option
中传递 cls=CustomOptionClass
来添加它 - 但我没有看到任何关于如何进行的文档关于这样做。