gpt4 book ai didi

python - 点击自定义选项提示功能

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

我注意到使用 click 的提示接受带有尾随空格的输入

ftp_server = click.prompt("FTP Server")

有没有办法使用像这样的自定义返回函数来拒绝尾随空格?

def custom_prompt(value):
if value.strip():
return True
else:
return False

ftp_server = click.prompt("FTP Server", custom_prompt)

我已经用过这个:

while not ftp_server.strip():
ftp_server = click.prompt("FTP Server")

但我正在寻找更好的方法,因为我不想每次使用提示时都使用 while 循环。

最佳答案

要拒绝无效的用户输入,您可以使用 value_proc 参数 click.prompt 。拒绝带有尾随空格的输入的验证器可能如下所示:

提示验证器

import click

def validate_no_trailing_space(value):
if value != value.rstrip():
raise click.UsageError("Trailing space is invalid!")
return value

ftp_server = click.prompt("FTP Server",
value_proc=validate_no_trailing_space)

修剪空格

您还可以考虑使用一个验证器来修剪前导和尾随空格,但拒绝名称中的空格:

def validate_no_internal_space(value):
value = value.strip()
if ' ' in value:
raise click.UsageError("Spaces are not valid here!")
return value

关于python - 点击自定义选项提示功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55098344/

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