博客
关于我
python 异常处理编程 编写程序,根据用户输入[0,100]范围内的分数,判断该分数是否及格。要考虑各种输入情况!
阅读量:497 次
发布时间:2019-03-06

本文共 1389 字,大约阅读时间需要 4 分钟。

针对这个分数判断及格的问题,我们可以编写一个基础的错误处理程序来避免各种边缘情况的出现。这个程序的主要目标是让用户输入有效的数字,然后根据设定的范围判断及格等级。

首先,我们可以设计一个循环结构,让用户有多次机会输入分数,如果输入了无效的数据,则会提示错误信息并让用户重新输入。这样可以确保程序的健壮性。

在处理输入的过程中,我们需要考虑到以下几点:

  • 用户可能输入超出范围的数字
  • 用户可能输入非数字字符(如字母或符号)
  • 用户可能输入大量的输入字符,导致输入溢出
  • 针对上述问题,我们可以在程序中使用try-except块来处理异常情况,并根据不同的异常类型给予不同的提示信息。这样可以让用户在输入错误时更清楚地知道问题所在。

    还需要注意的就是,当用户输入的数字符号时,解析错误也可能会出现,因此我们需要针对这种情况进行处理,并给予相应的提示。

    我们的程序逻辑可以分成以下几个步骤:

  • 进入主循环
  • 在循环内提示用户输入分数
  • 使用eval函数读取用户输入并转换成数值
  • 如果转换成功,检查分数是否在[0,100]范围内
  • 如果在范围内,判断及格等级
  • 如果不在范围内,提示超出范围并重新开始循环
  • 如果在转换过程中出现错误,提示错误信息并重新开始循环
  • 接下来,我将按照上述逻辑编写一个Python程序,并进行相应的错误处理和及格判断。

    示例代码:

    while True:    #提示用户输入分数    print("请在0到100之间输入您的分数:")    #读取用户输入并转换为数值    try:        score = eval(input())  # 使用eval来处理字符串转换    except:        print("输入错误,请重新输入!")  #处理所有不预期的异常        continue  # 继续循环,提示用户重新输入        #检查是否是数字字符    try:        assert isinstance(score, (int, float))    except:        print("请不要输入非数字或非小数值格式!")        continue        #检查分数范围    if score < 0 or score > 100:        print("分数超出了范围,请重新输入!")        continue    else:        #判断及格等级        if score >= 60:            print("及格!")        else:            print("不及格!")        break  #退出循环

    示例运行结果:

    用户输入:输入正确的情况下,程序会判断分数是否及格。输入错误的情况下,程序会给予相应的错误提示,并重新进入循环让用户重新输入。

    分数及格标准:设置及格线为60分及以上。如果输入的分数在这个范围内,则会输出及格!,否则会输出不及格!。

    程序结构:

    程序结构比较基础,只包含了一个小范围的错误处理和及格判断功能。对于更复杂的错误处理和判断条件,可以在这一框架的基础上进行扩展和完善。

    这样的判断过程比较简单直接,但是可以满足大部分常见的使用场景。对于更复杂的分数计算或者处理,可以在这个基础上进行扩展。

    转载地址:http://ypqdz.baihongyu.com/

    你可能感兴趣的文章
    NGINX配置TCP连接双向SSL
    查看>>
    Nginx配置——不记录指定文件类型日志
    查看>>
    nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)
    查看>>
    nginx配置中的服务器名称
    查看>>
    Nginx配置代理解决本地html进行ajax请求接口跨域问题
    查看>>
    nginx配置全解
    查看>>
    Nginx配置参数中文说明
    查看>>
    Nginx配置后台网关映射路径
    查看>>
    nginx配置域名和ip同时访问、开放多端口
    查看>>
    Nginx配置多个不同端口服务共用80端口
    查看>>
    Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
    查看>>
    Nginx配置如何一键生成
    查看>>
    Nginx配置实例-动静分离实例:搭建静态资源服务器
    查看>>
    Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
    查看>>
    Nginx配置实例-反向代理实现浏览器请求Nginx跳转到服务器某页面
    查看>>
    Nginx配置实例-负载均衡实例:平均访问多台服务器
    查看>>
    Nginx配置文件nginx.conf中文详解(总结)
    查看>>
    Nginx配置自带的stub状态实现活动监控指标
    查看>>
    nginx配置详解、端口重定向和504
    查看>>
    Nginx配置负载均衡到后台网关集群
    查看>>