weixin_45490561
weixin_45490561
采纳率68.4%
2020-03-03 11:35

请问大佬们,这个输出为什么不正确?

已采纳

如果这个代码中b=3,m=1的话不是应该输出60吗,为什么会输出62呢?

for yue in range(1,b):
        if yue==1 or 3 or 5 or 7 or 8 or 10 or 12:
            yuezongshu=yuezongshu+31
        elif yue==4 or 6 or 9 or 11:
            yuezongshu=yuezongshu+30
        else:
            if m==1:
                yuezongshu=yuezongshu+29
            else:
                yuezongshu=yuezongshu+28
    print(yuezongshu)
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

2条回答

  • caozhy 从今以后生命中的每一秒都属于我爱的人 1年前
     if yue in [1, 3, 5, 7, 8 , 10 , 12]:
     或者
     if yue==1 or yue==3 or yue==5 or yue==7 or yue==8 or yue==10 or yue==12:
    
    点赞 评论 复制链接分享
  • m0_37886429 幸福丶如此 1年前

    确实是60啊

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    
    b=3
    m=1
    yuezongshu = 0
    for yue in range(1,b):
        if yue in [1,3,5,7,8,10,12]:
            yuezongshu = yuezongshu+31
        elif yue in [4,6,9,11]:
            yuezongshu = yuezongshu+30
        else:
            if m == 1:
                yuezongshu = yuezongshu+29
            else:
                yuezongshu=yuezongshu+28
    print(yuezongshu)
    
    
    点赞 评论 复制链接分享

相关推荐