Horizon816 2022-07-16 07:54 采纳率: 100%
浏览 66
已结题

Python初学者,想问一下为什么会这样

img


这个为什么会输出yes啊,明明or旁边的两个都是否。

zsbd

  • 写回答

6条回答 默认 最新

  • 亖夕 Python领域新星创作者 2022-07-17 09:45
    关注

    帮你分析一波,耐心看

    
    b = "o"
    if b == "y" or "y":  # 原题
        print("yes")
    elif b != "Y" or "y":
        print("no")
    
    
    print(b == "Y" or "y")  # 输出y,说明b不等于y,但是or右边的数非零所以"y" or "y"为真
    
    
    # 输出 no
    if b == "y" or 0:   # b不等于y,但是or右边的数是零所以"y" or "y"为假
        print("yes")
    elif b != "Y" or "y":
        print("no")
    
    
    # 输出yes
    if b == "y" or "y":   # 可以看到当if语句执行后即使满足elif条件语句也不会执行
        print("yes")
    elif b == "o":
        print("no")
    
    
    if b != "Y" or "y":   # 将if语句和elif语句条件调换输出no
        print("no")     # 说明"Y" or "y"也为真,这就是你疑惑为什么
    elif b == "y" or "y":   # elif为真但是却输出yes的原因
        print("yes")
    

    望采纳

    展开全部

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

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 7月18日
  • 已采纳回答 7月18日
  • 创建了问题 7月16日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部