【问题标题】:Python: To check whether a given year is a leap year or not?Python:检查给定年份是否为闰年?
【发布时间】:2022-11-14 06:06:12
【问题描述】:

我想创建一个带有用户定义函数的python程序,它应该读取用户输入的年份,并通过检查输入的年份是否为闰年来返回真/假。

这是我试过的

def is_leap(year):
    leap = False
    if(year%4==0):
        if(year%100!=0):
            if(year%400==0):
                leap= True
            else:
                leap= False
        else:
            leap= False
                
    else:
        leap= False
    
    return leap

year = int(input())
print(is_leap(year))

而且我没有得到想要的输出。

我用以下两个输入尝试了这段代码

2024

输出是

False

2023

输出是

False

我在这里想念什么?

【问题讨论】:

    标签: python python-3.x function


    【解决方案1】:

    通过嵌套 if/else,您可以充当 AND,而您需要 OR。

    最好是重构你的代码:

    def is_leap(year):
        if(year%4==0) or (year%100!=0) or (year%400==0):
            return True
        return False
    

    这相当于:

    def is_leap(year):
        return (year%4==0) or (year%100!=0) or (year%400==0)
    

    【讨论】:

    • 那么2023年是闰年吗?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-12-17
    • 2013-04-27
    • 1970-01-01
    • 1970-01-01
    • 2022-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多