西瓜最中间的一勺 2022-01-09 21:37 采纳率: 100%
浏览 45
已结题

Python中if语句多条件

今天遇到一个问题
代码入下:


age = int(input("输入你的年龄"))
if(age >= 18):
    print("成年")
elif(age <=0 or age>=100):
    print("输入错误")
else:
    print("未成年")

我预想的输出结果是:
输入0 以及100之后 得到 输入错误
输入 0-100之前的数 得到 成年/未成年

实际输出结果

输入-1 得到 输入错误
输入101 得到 成年
其他正常

因为本人刚学完JAVA 目前在自学python 我按照java的思路,在想是不是or 关键字的问题
但是我换成了java中的 || 他会在编译时候就报错,然后我换成了| 得到的结果就是elif部分的代码完全不执行了
哪位小伙伴懂这个

  • 写回答

2条回答 默认 最新

  • 西瓜最中间的一勺 2022-01-09 21:53
    关注
    
    age = int(input("输入你的年龄"))
    if (age >= 18) and (age < 100):
        print("成年")
    elif (age <=0)or(age>=100):
        print("输入错误")
    else:
        print("未成年")
    

    突然想明白,判断条件缺少了,输入大于100的数,这个数也同样满足第一个条件,第一个条件满足之后,后面的条件不会继续执行,所以得不到想要的答案,粗心问题,条件不全=.=

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 1月17日
  • 已采纳回答 1月9日
  • 创建了问题 1月9日

悬赏问题

  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。
  • ¥15 抖音看过的视频,缓存在哪个文件