问题描述
用文字描述要解决的问题是什么。
示例:输入今天的年份月份日,判断这一天是这一年的第几天
输入:今天的年月日
输出:这是今年的第几天
解决方案
首先要判断是否为闰年,如果是闰年并且输入的月份大于等于三时,天数需要多加一天。然后加上每个月份的天数和这个月已经过去的天数。
代码清单 1 DFS求解1到100求和问题Python代码
def is_a_leap_year(year): if year % 100 != 0 and year % 4 == 0: return True if year % 100 == 0 and year % 400 ==0: return True return False
def which_day(date): time_str = date.split("-") leap_year = is_a_leap_year(int(time_str[0])) if leap_year: day_list = [0,31,29,31,30,31,30,31,31,30,31,30,31] else: day_list = [0,31,28,31,30,31,30,31,31,30,31,30,31] day = 0 for i in range(0,int(time_str[1])): day+= day_list[i] print("这是{}年的第{}天".format(time_str[0], day + int(time_str[2])))
if __name__ == "__main__": which_day(input("请输入年月日格式为2002-1-1/n"))
|
代码测试:
结语
本文解决的问题是“今天是今年第几天的问题”,运用python代码可以计算出今年是第几天,非常简便。