输入API未收录文本或空白内容时如何触发错误提示?
解决机器人输入空白/随机文本无错误提示的问题
针对你遇到的两个问题,我们可以通过输入校验和匹配结果追踪来解决:
问题根源
- 空白输入时,
args会变成空字符串,而"" in 任意字符串的判断永远为真,导致遍历输出所有链接; - 输入随机文本无匹配时,循环执行后没有任何输出,但未触发错误提示逻辑。
修改后的代码
import requests # 获取输入并去除首尾空白字符 args = input("Escribe:").strip() # 处理空白输入的情况 if not args: print("错误:输入不能为空!") else: response = requests.get("https://jose89fcb.es/api/aumentos.php") data = response.json() # 统计匹配到的条目数量 match_count = 0 for api in data['augments']: if args in api["name"]: print(api["icon"]) match_count += 1 # 无匹配结果时触发错误提示 if match_count == 0: print(f"错误:未找到与'{args}'匹配的内容!")
关键修改说明
- 空白输入拦截:用
strip()清除输入首尾的空白字符,再通过if not args判断输入是否为空,直接输出错误提示; - 匹配结果统计:新增
match_count变量记录匹配到的条目数,遍历结束后如果计数为0,说明输入文本无对应匹配,输出错误提示。
内容的提问来源于stack exchange,提问作者noelia34563
相关产品推荐
相关产品推荐

