2017-02-10 194 views
0

好了,所以我在学习python3和想,也许尝试了我的第一个脚本与leapyear计算器,但我似乎无法弄清楚如何打印,如果当年是leapyear还是不算少得多接下来的两个。Python3闰年计算器

这里是我的代码迄今:

#!/usr/bin/python3 

#calculate if this year is a leap year and the next 2 leap years 

from datetime import datetime 

this_year=(datetime.now().strftime('%Y')) 

def is_leap_year(year): 
    if ((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0): 
     return "{0}, {1} is a leap year".format(True, year) 
    return "{0} is not a leap year".format(year) 

print(is_leap_year(this_year) 

所以任何人都可以指出我的错误(S)在这里?非常感谢!

+0

我的歉意。我考虑过这一点,但不知道在哪里发布。我认为会有一些精明的读者肯定会提供更正,而不是解决实际问题。我的感谢是无止境的。 – 2017-02-10 14:39:09

+1

不需要道歉。事情是,你有更好的机会在那里找到与编程相关的答案,而不是在这里。 – schaiba

回答

3

你有日期处理例程和诸如此类的东西有一个整体库,只需使用它们:

try: 
    datetime.date(2016, 2, 29) 
    print("is leap-year") 
except ValueError: 
    print("isn't leap-year") 

如果date()方法能够处理2月29日,这是一个闰年,否则不是。

+0

谢谢!这似乎比我的第一次尝试更简单。 – 2017-02-10 14:39:49