python命令行交互 引导用户选择宠物

字多不看,直接体验

代码

以下代码将在命令行中,引导用户选择一个或者多个宠物,并反馈用户选择的宠物

python 复制代码
# -*- coding:UTF-8 -*-
"""
@author: dyy
@contact: douyaoyuan@126.com
@time: 2023/11/22 15:19
@file: 在命令行中引导用户选择宠物.py
@desc: xxxxxx
"""

# region 引入必要的依赖
import os

模块名 = 'DebugInfo'
try:
    from DebugInfo.DebugInfo import *
except ImportError as impErr:
    print(f"尝试导入 {模块名} 依赖时检测到异常:{impErr}")
    print(f"尝试安装 {模块名} 模块:")
    try:
        os.system(f"pip install {模块名}")
    except OSError as osErr:
        print(f"尝试安装模块 {模块名} 时检测到异常:{osErr}")
        exit(0)
    else:
        try:
            from DebugInfo.DebugInfo import *
        except ImportError as impErr:
            print(f"再次尝试导入 {模块名} 依赖时检测到异常:{impErr}")
            exit(0)

# endregion

看板: 打印模板 = 打印模板()

待选宠物 = ['猫', '狗', '猪', '牛', '羊', '马']

选择器 = 交互接口类()
选择器.添加选项(选项=待选宠物)

用户选择 = 选择器.发起选项交互(输入提示='请选择一个宠物吧(0: 退出选择):', 多选=True, 画板=看板.副本)

if '0' in 用户选择.代号:  # 用户放弃了选择
    看板.消息(红字('您放弃了选择, 太可惜了'))
else:
    if len(用户选择.选项) == 1:
        看板.消息(f'恭喜您选择了: {绿字(用户选择.选项[0])}')
    else:
        看板.消息('您的选择如下:')
        看板.添加多行(行列表=用户选择.选项,拆分列数=1,修饰方法=绿字).展示表格()

以上代码中:

  • 我们准备了一个宠物列表,以供用户选择
  • 然后我们向用户发起选项交互,并提示用户通过代号选择一个或者多个宠物,或者输入 0 以退出选择。
  • 当用户输入 0 时,我们提示用户放弃了选择
  • 当用户输入一个不存在的代号时,我们提示用户输入无效
  • 当用户输入一个代号时,我们提示用户选择的宠物是什么
  • 当用户输入多个僅时,我们提示用户选择了哪些宠物

用户拒绝选择

当用户输入 0 并回车时,我们提示用户拒绝了选择,如下👇

用户选择了一个不存在的宠物

当用户输入的内容不在代号范围内时,我们提示用户输入无效,如下👇

用户输入一个代号

当用户输入一个代号时,我们提示用户选择的宠物是什么,如下👇

用户选择了多信宠物

当用户输入多个代号时,我们提示用户选择了哪些宠物,如下👇

小结

以上就是今天分享的引导用户选择宠物的例子了,通过这种方法,我们可以在命令行中实现优良的交互体验,在保持命令行高效的同时,又保留了窗口界面的易用性,同时约束了用户输入的多变性。

以上就是今天分享的引导用户选择宠物的例子了,通过这种方法,我们可以在命令行中实现优良的交互体验,在保持命令行高效的同时,又保留了窗口界面的易用性,同时约束了用户输入的多变性。

相关推荐
SelectDB13 小时前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
荣码20 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
金銀銅鐵1 天前
[Python] 基于欧几里得算法,实现分数约分计算器
python·数学
Lyn_Li1 天前
Kaggle Top 5 | 198只股票、200条数据的金融预测——BattleFin高分方案从零复现
python·kaggle·比赛复盘·金融预测
小九九的爸爸2 天前
前端想要入门Agent开发,要具备哪些Python基础?
python·agent·ai编程
阿耶同学2 天前
手把手教你用 LangGraph 搭建三层嵌套 Agent 架构
python·程序员
花酒锄作田2 天前
Pydantic校验配置文件
python
hboot2 天前
AI工程师第四课 - 深度学习入门
pytorch·python·神经网络
ZhengEnCi3 天前
P2M-Matplotlib折线图完全指南-从数据可视化到趋势分析的Python绘图利器
python·matlab·数据可视化
ZhengEnCi3 天前
P2L-Matplotlib饼图完全指南-从数据可视化到图表定制的Python绘图利器
python·matlab