我应该如何检查1900年之后的leap年

时间:2019-11-15 21:03:29

标签: python-3.x

***def is_leap(year):
    leap = False
    if(( year % 400 == 0 and year % 100 == 0 ) or ( year % 4 ==0 )):
        leap = True
    # Write your logc here

    return leap
year = int(input())
print(is_leap(year))***

我使用此代码来查找1900年之后的黑客等级python“编写函数”练习的leap年,但它显示2100年是错误的。我该怎么办?

1 个答案:

答案 0 :(得分:1)

条件

( year % 400 == 0 and year % 100 == 0 ) or ( year % 4 ==0 )

是错误的。更改您的代码,以使

  1. year % 400 == 0 year年
  2. year % 100 == 0不是a年
  3. year % 4 == 0 year年
  4. 其他:不是not年

您还可以使用以下算法:https://en.wikipedia.org/wiki/Leap_year#Algorithm