1、總體**指令碼
/users/nisj/pycharmprojects/bidataproc/love/datelist.py
執行結果:# -*- coding=utf-8 -*-
import warnings
import datetime
warnings.filterwarnings("ignore")
def getnowday():
daynow = datetime.datetime.today().strftime('%y-%m-%d')
return daynow
def getyesterday():
yesterday = (datetime.datetime.today() - datetime.timedelta(1)).strftime('%y-%m-%d')
return yesterday
def daterange(begindate, enddate):
dates =
dt = datetime.datetime.strptime(begindate, "%y-%m-%d")
date = begindate[:]
while date <= enddate:
dt = dt + datetime.timedelta(1)
date = dt.strftime("%y-%m-%d")
return dates
def monthrange(begindate, enddate):
monthset = set()
for date in daterange(begindate, enddate):
monthset.add(date[0:7])
monthlist =
for month in monthset:
return sorted(monthlist)
def datehourrange(begindatehour, enddatehour):
dhours =
dhour = datetime.datetime.strptime(begindatehour, "%y-%m-%d %h")
date = begindatehour[:]
while date <= enddatehour:
dhour = dhour + datetime.timedelta(hours=1)
date = dhour.strftime("%y-%m-%d %h")
return dhours
print getnowday()
print getyesterday()
print daterange(begindate='2018-06-05', enddate='2018-07-09')
print monthrange(begindate='2018-01-09', enddate='2019-09-01')
print datehourrange(begindatehour='2018-01-01 23', enddatehour='2018-01-03 00')
2、獲取日期清單的**/usr/bin/python /users/nisj/pycharmprojects/bidataproc/love/datelist.py
2018-06-28
2018-06-27
['2018-06-05', '2018-06-06', '2018-06-07', '2018-06-08', '2018-06-09', '2018-06-10', '2018-06-11', '2018-06-12', '2018-06-13', '2018-06-14', '2018-06-15', '2018-06-16', '2018-06-17', '2018-06-18', '2018-06-19', '2018-06-20', '2018-06-21', '2018-06-22', '2018-06-23', '2018-06-24', '2018-06-25', '2018-06-26', '2018-06-27', '2018-06-28', '2018-06-29', '2018-06-30', '2018-07-01', '2018-07-02', '2018-07-03', '2018-07-04', '2018-07-05', '2018-07-06', '2018-07-07', '2018-07-08', '2018-07-09']
['2018-01', '2018-02', '2018-03', '2018-04', '2018-05', '2018-06', '2018-07', '2018-08', '2018-09', '2018-10', '2018-11', '2018-12', '2019-01', '2019-02', '2019-03', '2019-04', '2019-05', '2019-06', '2019-07', '2019-08', '2019-09']
['2018-01-01 23', '2018-01-02 00', '2018-01-02 01', '2018-01-02 02', '2018-01-02 03', '2018-01-02 04', '2018-01-02 05', '2018-01-02 06', '2018-01-02 07', '2018-01-02 08', '2018-01-02 09', '2018-01-02 10', '2018-01-02 11', '2018-01-02 12', '2018-01-02 13', '2018-01-02 14', '2018-01-02 15', '2018-01-02 16', '2018-01-02 17', '2018-01-02 18', '2018-01-02 19', '2018-01-02 20', '2018-01-02 21', '2018-01-02 22', '2018-01-02 23', '2018-01-03 00']
process finished with exit code 0
3、獲取月份清單的**def daterange(begindate, enddate):
dates =
dt = datetime.datetime.strptime(begindate, "%y-%m-%d")
date = begindate[:]
while date <= enddate:
dt = dt + datetime.timedelta(1)
date = dt.strftime("%y-%m-%d")
return dates
借助於日期清單函式,然後對月份去重和排序。本想借datetime.timedelta(months=1),但不支援month,僅支援【datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)】;其中引數都是可選,預設值為0。
4、獲取日期小時清單**def monthrange(begindate, enddate):
monthset = set()
for date in daterange(begindate, enddate):
monthset.add(date[0:7])
monthlist =
for month in monthset:
return sorted(monthlist)
借助了datetime.timedelta(hours=1),比月份的方便一些。
5、其他def datehourrange(begindatehour, enddatehour):
dhours =
dhour = datetime.datetime.strptime(begindatehour, "%y-%m-%d %h")
date = begindatehour[:]
while date <= enddatehour:
dhour = dhour + datetime.timedelta(hours=1)
date = dhour.strftime("%y-%m-%d %h")
return dhours
獲取分鐘及秒的清單可以參照4,另外兩個是取當前日期及昨天日期函式。
注意月份清單的引數是兩個日期值。
python 獲取日期 python 獲取日期
python 獲取日期我們需要用到time模組,比如time.strftime方法 time.strftime y m d time.localtime time.time 最後用time.strftime 方法,把剛才的一大串資訊格式化成我們想要的東西,現在的結果是 2013 03 31 time...
PHP 獲取兩個日期之間的月 天
獲取月 start year 2020 開始年 start month 01 開始月 end year 2021 結束年 end month 09 結束月 date arr 儲存結果的陣列 if start year end year else else if year i end year els...
python獲取日期
我們需要用到time模組,比如time.strftime方法 time.strftime y m d time.localtime time.time 最後用time.strftime 方法,把剛才的一大串資訊格式化成我們想要的東西,現在的結果是 2013 03 31 time.strftime裡面...