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 并回车时,我们提示用户拒绝了选择,如下👇

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

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

用户输入一个代号

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

用户选择了多信宠物

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

小结

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

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

相关推荐
郭庆汝5 小时前
pytorch、torchvision与python版本对应关系
人工智能·pytorch·python
思则变8 小时前
[Pytest] [Part 2]增加 log功能
开发语言·python·pytest
漫谈网络8 小时前
WebSocket 在前后端的完整使用流程
javascript·python·websocket
try2find10 小时前
安装llama-cpp-python踩坑记
开发语言·python·llama
博观而约取11 小时前
Django ORM 1. 创建模型(Model)
数据库·python·django
精灵vector12 小时前
构建专家级SQL Agent交互
python·aigc·ai编程
Zonda要好好学习12 小时前
Python入门Day2
开发语言·python
Vertira13 小时前
pdf 合并 python实现(已解决)
前端·python·pdf
太凉13 小时前
Python之 sorted() 函数的基本语法
python
项目題供诗13 小时前
黑马python(二十四)
开发语言·python