中学生薪薪 2023-05-21 19:33 采纳率: 57.1%
浏览 16

最后的else为什么不用缩进

猜数字游戏的设计:
系统生成一个1-100内随机数
用户输入数字与系统生成的随机数比较(一共5次机会)
1.判断输入的是否为数字 若输入的不是数字 提示重新输入
2.若输入的数字比生成的随机数大(小),提示输入数字过大(过小)
3.若输入数字余生成数字相等,提示回答正确
4.五次都没回答正确 提示很遗憾,未猜对

最后一行的else为什么不用缩进 还是我写的代码有问题

img

  • 写回答

3条回答 默认 最新

  • 梦幻精灵_cq 2023-05-21 19:47
    关注

    您的最后的 else 实则是多余的,for 循环完成5次,自然就执行到您的最后一行 print() 了。您的写法有问题,应该报错才对,因为 else 不属于前面的if代码块。else应该要与for或者while配对用才可以。我没试过单独存在。

    • 居然不会报错
    #!sur/bin/nve python
    # coding: utf-8
    
    n = int(input(f"\n{'输入一个整数:':>12}"))
    
    for i in range(3):
    
        if n > 50:
            print(f"\n{n:>8}大于50")
        elif n > 40:
            print(f"\n{n:>8}大于40")
        elif n > 30:
            print(f"\n{n:>8}大于30")
    
    
    else:
        print(f"\n您的输入是{n:>8}!")
    
    
    #!sur/bin/nve python
    # coding: utf-8
    
    n = int(input(f"\n{'输入一个整数:':>12}"))
    
    for i in range(3):
    
        if n > 50:
            print(f"\n{n:>8}大于50")
        elif n > 40:
            print(f"\n{n:>8}大于40")
        elif n > 30:
            print(f"\n{n:>8}大于30")
    
    #else:
    print(f"\n您的输入是{n:>8}!")
    

    经测试,有没得else,效果一样。

    img

    请翻阅我的学习笔记——


    评论 编辑记录

报告相同问题?

问题事件

  • 修改了问题 5月21日
  • 创建了问题 5月21日

悬赏问题

  • ¥15 这种情况的伯德图和奈奎斯特曲线怎么分析?
  • ¥50 paddleocr带斜线的0很容易识别成9
  • ¥15 电子档案元素采集(tiff及PDF扫描图片)
  • ¥15 flink-sql-connector-rabbitmq使用
  • ¥15 zynq7015,PCIE读写延时偏大
  • ¥15 使用spss做psm(倾向性评分匹配)遇到问题
  • ¥20 vue+UEditor附件上传问题
  • ¥15 想做个WPS的自动化代码,不知道能做的起不。
  • ¥15 uniApp,生成安卓安卓包后,黑暗主题中间内容不生效,底部导航正常
  • ¥15 斯坦福自动漂移非线性模型反解