2018 03 26 日期倒計時

2021-08-17 16:17:52 字數 2901 閱讀 2522

思路:

def isleapyear(n):

if (n%4==0 and n%100!=0) or n%400==0:#兩個判斷是否是閏年的條件必須是或的關係,不能缺少。

return true

else:

return false

def daysyear(date):

monthdy=[0,31,28,31,30,31,30,31,31,30,31,30,31]

if isleapyear(date[0]):

monthdy[2]=29

smondys=sum(monthdy[0:date[1]])

days=smondys+date[2]

return days

if __name__=='__main__':

sumday=0

ymd=

ymd=[int(i)for i in raw_input().split('-')]

for i in range(2015,ymd[0]):

if not isleapyear(i):

sumday=sumday+365

else:

sumday=sumday+366

sumday+=daysyear(ymd)-daysyear([2015,10,18])

print sumday

2.1、閏年是公曆中的名詞。

普通年(不能被100整除的年份)

能被4整除的為閏年。(如2023年就是閏年,2023年不是閏年);

世紀年(能被100整除的年份)

能被400整除的是閏年。(如2023年是閏年,2023年不是閏年);

閏年(leap year)是為了彌補因人為曆法規定造成的年度天數與地球實際公轉週期的時間差而設立的。補上時間差的年份為閏年。

閏年共有366天(1-12月分別為31天,29天,31天,30天,31天,30天,31天,31天,30天,31天,30天,31天)。

2.2、公曆中只分閏年和平年,平年有365天,而閏年有366天(2月中多一天);

2.3、

ymd=[int(i)for i in raw_input().split('-')]
等價於:

future_day = list(map(int,raw_input().split('-')))
其中map的知識點是:

python map() 函式:

描述map() 會根據提供的函式對指定序列做對映。

第乙個引數 function 以引數序列中的每乙個元素呼叫 function 函式,返回包含每次 function 函式返回值的新列表。

語法map() 函式語法:

map(function, iterable, ...)

引數function -- 函式,有兩個引數

iterable -- 乙個或多個序列

返回值python 2.x 返回列表。

python 3.x 返回迭代器。

例項:

>>>def square(x) :            # 計算平方數

... return x ** 2

...

>>> map(square, [1,2,3,4,5]) # 計算列表各個元素的平方

[1, 4, 9, 16, 25]

>>> map(lambda x: x ** 2, [1, 2, 3, 4, 5]) # 使用 lambda 匿名函式

[1, 4, 9, 16, 25]

# 提供了兩個列表,對相同位置的列表資料進行相加

>>> map(lambda x, y: x + y, [1, 3, 5, 7, 9], [2, 4, 6, 8, 10])

[3, 7, 11, 15, 19]

python3 的:

def isleapyear(year):

if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:

return true

else:

return false

def dayinyear(day):

month = [0,31,28,31,30,31,30,31,31,30,31,30,31]

sumday = day[2]

if isleapyear(day[0]):

month[2] = 29

for i in range(1,day[1]):

sumday += month[i]

return sumday

count_day = 0

future_day = list(map(int,raw_input().split('-')))

for i in range(2015,future_day[0]):

if isleapyear(i):

count_day += 366

else:

count_day += 365

count_day += dayinyear(future_day)-dayinyear([2015,10,18])

print(count_day)

日期倒計時

題目描述 在經濟 科技日益發達的今天,人們對時間的把握越來越嚴格,對於乙個一定影響力的公司的高管來說,他可能要將自己的行程提前安排到下個月。對於普通人來說,他也可能將幾天之後的安排已經提前做好。請設計乙個程式計算出今天距離未來的某一天還剩多少天。假設今天是2015年10月18日。輸入 輸入乙個日期格...

日期倒計時

日期倒計時 題目描述 在經濟 科技日益發達的今天,人們對時間的把握越來越嚴格,對於乙個一定影響力的公司的高管來說,他可能要將自己的行程提前安排到下個月。對於普通人來說,他也可能將幾天之後的安排已經提前做好。請設計乙個程式計算出今天距離未來的某一天還剩多少天。假設今天是2015年10月18日。輸入 輸...

日期倒計時

題目描述 在經濟 科技日益發達的今天,人們對時間的把握越來越嚴格,對於乙個一定影響力的公司的高管來說,他可能要將自己的行程提前安排到下個月。對於普通人來說,他也可能將幾天之後的安排已經提前做好。請設計乙個程式計算出今天距離未來的某一天還剩多少天。假設今天是2015年10月18日。輸入 輸入乙個日期格...