题目描述:
在经济、科技日益发达的今天,人们对时间的把握越来越严格,对于一个一定影响力的公司的高管来说,他可能要将自己的行程提前安排到下个月。对于普通人来说,他也可能将几天之后的安排已经提前做好。请设计一个程序计算出今天距离未来的某一天还剩多少天。
假设今天是2015年10月18日。
算法思路分析:
1、输入时间future_date;
2、判断平闰年isLeapYear;
3、先计算2015-->future_date[0]的天数,闰年--366;平年--365;
4、计算当年和2015.10.18的各自的天数(闰年2月29),作减;
5、求和
代码练习:
def isLeapYear(Year):
if (Year % 4 == 0 and Year % 100 != 0) or Year % 400 == 0:
return True
else:
return False
def countDays_inDate(date):
month = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]
days_indate = date[2]
if isLeapYear(date[0]):
month[2] = 29
for i in range(1, date[1]):
days_indate += month[i]
return days_indate
future_date = map(int, raw_input().split('-'))
count_days = 0
for i in range(2015, future_date[0]):
if isLeapYear(i):
count_days += 366
else:
count_days += 365
count_days += (countDays_inDate(future_date) - countDays_inDate([2015, 10, 18]))
print count_days
基础知识备注:
1、闰年2月29,天数366;
2、熟练range()用法,range(a,b)是从a-->b-1;
3、map()的用法:
吐槽一下csdn的博客,这篇博客我写了三遍,最后还是没保存下来,重新建了一个重新写才保存下来,要闹哪样!!!
描述
map() 会根据提供的函数对指定序列做映射。
第一个参数 function 以参数序列中的每一个元素调用 function 函数,返回包含每次 function 函数返回值的新列表。
语法
map() 函数语法:
map(function, iterable, ...)参数
- function -- 函数,有两个参数
- iterable -- 一个或多个序列
返回值
Python 2.x 返回列表。
Python 3.x 返回迭代器。
----------------------------------------------------------------------------------------------------------------------------
详细内容请关注公众号:目标检测和深度学习
----------------------------------------------------------------------------------------------------------------------------