重命名 python 单击参数
Rename python click argument
我有这段代码:
import click
@click.option('--delete_thing', help="Delete some things columns.", default=False)
def cmd_do_this(delete_thing=False):
print "I deleted the thing."
我想重命名 --delete-thing
中的选项变量。但是 python 不允许在变量名中使用破折号。有没有办法编写这种代码?
import click
@click.option('--delete-thing', help="Delete some things columns.", default=False, store_variable=delete_thing)
def cmd_do_this(delete_thing=False):
print "I deleted the thing."
所以delete_thing
会被设置为delete-thing
的值
默认情况下,click 会智能地将选项内的命令行连字符映射到下划线,因此您的代码应该按原样工作。这用于点击文档,例如 Choice example. If --delete-thing is intended to be a boolean option, you may also want to make it a boolean argument.
正如 gbe 的回答所说,click
会自动将 cli 参数中的 -
转换为 python 函数参数的 _
。
但您也可以将 python 变量显式命名为您想要的任何名称。在此示例中,它将 --delete-thing
转换为 new_var_name
:
import click
@click.command()
@click.option('--delete-thing', 'new_var_name')
def cmd_do_this(new_var_name):
print(f"I deleted the thing: {new_var_name}")
我有这段代码:
import click
@click.option('--delete_thing', help="Delete some things columns.", default=False)
def cmd_do_this(delete_thing=False):
print "I deleted the thing."
我想重命名 --delete-thing
中的选项变量。但是 python 不允许在变量名中使用破折号。有没有办法编写这种代码?
import click
@click.option('--delete-thing', help="Delete some things columns.", default=False, store_variable=delete_thing)
def cmd_do_this(delete_thing=False):
print "I deleted the thing."
所以delete_thing
会被设置为delete-thing
默认情况下,click 会智能地将选项内的命令行连字符映射到下划线,因此您的代码应该按原样工作。这用于点击文档,例如 Choice example. If --delete-thing is intended to be a boolean option, you may also want to make it a boolean argument.
正如 gbe 的回答所说,click
会自动将 cli 参数中的 -
转换为 python 函数参数的 _
。
但您也可以将 python 变量显式命名为您想要的任何名称。在此示例中,它将 --delete-thing
转换为 new_var_name
:
import click
@click.command()
@click.option('--delete-thing', 'new_var_name')
def cmd_do_this(new_var_name):
print(f"I deleted the thing: {new_var_name}")