2017-10-04 29 views
0

我已經列表如下檢查清單上的日期是老年人超過2天

list = ['9/27/17', '9/26/17', '9/22/17'] 

而且我想知道有多少日期早於2天,有多少超過5天(從今天起 - 當前日期)。達成目標的最佳方式是什麼?請注意,有時列表中有更多的日期,而不僅僅是3個例子。預先感謝您的輸入/提示。 Regrds。

+0

?彼此?從今天開始? – Lafexlos

+0

一個想法是將[日期對象](https://docs.python.org/3/library/datetime.html#date-objects)包含在列表中,並根據[timedelta objects](https: //docs.python.org/3/library/datetime.html#timedelta-objects) – raratiru

+0

從當前日期(今天)開始的2天以前。 – Gonzalo

回答

2

你可以試試下面

from datetime import datetime 

def c(t): 
    ttime = datetime.strptime(t, '%m/%d/%y') 
    return ((datetime.now() - ttime).days) 

timelist = ['9/27/17', '9/26/17', '9/22/17', '10/3/17'] 
timelist = [c(t) for t in timelist] 
print(timelist) 

該代碼將返回[7,8,12,1]那麼你可以做一些簡單的對其進行分類,你需要

基本上你可以分析什麼使用strptime,文檔:https://docs.python.org/2/library/datetime.html#strftime-strptime-behavior

+0

太棒了!將對您的建議起作用。生成列表將幫助我進行下一步操作。感謝您的支持。 – Gonzalo

1

這將工作,給更改限定日期範圍的靈活性

from datetime import datetime, timedelta, date 

    #make a 2 day limit 
    datelimit = datetime.today() - timedelta(days=2) 

    yourlist = ['9/27/17', '9/26/17', '9/22/17'] 

    for i in yourlist: 
     j = datetime.strptime(i, "%m/%d/%y") 
     if j < datelimit: 
      print (j.strftime('%d/%m/%Y')) 

enter image description here

比.. _what_2天舊
相關問題