头图

代码

以下代码将在命令行中,引导用户选择一个数字,并反馈用户输入的值

# -*- coding:UTF-8 -*-
"""
@author: dyy
@contact: douyaoyuan@126.com
@time: 2023/11/22 15:51
@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

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


def 大于0小于120(内容: str or int) -> bool:
    if not isinstance(内容, int):
        内容 = str(内容 if 内容 else '').strip()
        if not 内容:
            return False
        elif not 内容.isdigit():
            return False
        else:
            内容 = int(内容)
    return 0 < 内容 < 120

用户年龄 = 交互接口类().发起文本交互(输入提示='请输入您的年龄:', 限定范围=大于0小于120, 画板=看板.副本)

if '0' == 用户年龄:
    看板.消息(红字('您拒绝输入年龄'))
else:
    看板.消息(f'用户年龄是: {绿字(用户年龄)}')

以上代码中:

  • 我们准备了方法,用户判断用户的输入是否符合预期
  • 然后我们向用户发起文本交互,将使用我们提供的方法判断是否符合预期
  • 当用户输入 0 时,我们提示用户放弃了输入
  • 当用户输入一个非整数或者非数字时,我们提示用户输入无效
  • 当用户输入一个小于0的数字时,我们提示用户输入无效
  • 当用户输入一个大于120的数字时,我们提示用户输入无效
  • 当用户输入一个 (0,120) 的整数时,我们返回用户的输入

用户拒绝输入

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

用户输入了一个非整数或者非数字时

当用户输入非整数或者非数字时,我们提示用户输入无效,如下👇
20231122165028

用户输入一个小于0的数字时

当用户输入一个小于 0 的数字时,我们提示用户输入无效,如下👇
20231122165223

用户输入了一个大于120的数字时

当用户输入一个大于120的数字时,我们提示用户输入无效,如下👇
20231122165312

用户输入一个 大于0 小于120 的数字时

当用户输入一个 0-120 的数字时,我们反馈提示用户的输入,如下👇
20231122165444

小结

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


三块钱
7 声望0 粉丝