gpt4 book ai didi

python click 设置选项的允许值

转载 作者:行者123 更新时间:2023-12-01 01:08:49 25 4
gpt4 key购买 nike

我创建了一个 Click 命令,它将文件从源复制到目标

该命令接受 3 个参数:

1 - 文件来源

2 - 文件目标

3 - 传输模式(本地、ftp)

import click    

@click.group()
def cli():
pass

@cli.command()
@click.argument('source')
@click.argument('destination')
@click.option('--mode', required = True)
def copy(source, destination, mode):

print("copying files from " + source + " to " + destination + "using " + mode + " mode")


if __name__ == '__main__':
cli()

当我使用以下命令调用脚本时:command.py copy "C:/""D:/"--mode=network

我得到以下输出:使用网络模式将文件从 C:/复制到 D:/

正如你所看到的,我指定了网络作为模式,但我只想要两个选项:本地或 ftp

那么如何使用 Click 设置选项的允许值?

最佳答案

您想使用click.Choice

@cli.command()
@click.argument('source')
@click.argument('destination')
@click.option('--mode', type=click.Choice(['local', 'ftp']), required = True)
def copy(source, destination, mode):
print("copying files from " + source + " to " + destination + "using " + mode + " mode")

关于python click 设置选项的允许值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55065439/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com