python学习笔记十五:日期时间处理笔记

王朝学院·作者佚名  2016-08-27
窄屏简体版  字體: 小  |  中  |  大  |  超大  

#-*- coding: utf-8 -*-importdatetime#给定日期向后N天的日期defdateadd_day(days):

d1=datetime.datetime.now()

d3= d1 +datetime.timedelta(days)returnd3#昨天defgetYesterday():

today=datetime.date.today()

oneday= datetime.timedelta(days=1)

yesterday= today -onedayreturnyesterday#今天defgetToday():returndatetime.date.today()#获取给定参数的前几天的日期,返回一个listdefgetDaysBefore(num):

today=datetime.date.today()

oneday= datetime.timedelta(days=1)

li=[]foriinrange(0, num):#今天减一天,一天一天减today = today -oneday#把日期转换成字符串li.append(datetostr(today))returnli#将字符串转换成datetime类型defstrtodatetime(datestr, format):returndatetime.datetime.strptime(datestr, format)#时间转换成字符串,格式为2015-02-02defdatetostr(date):returnstr(date)[0:10]#时间转换成字符串,格式为2015-02-02defdatetostr_secod(date):returnstr(date)[0:19]#两个日期相隔多少天,例:2015-2-04和2015-3-1defdatediff(beginDate, endDate):

format="%Y-%m-%d"bd=strtodatetime(beginDate, format)

ed=strtodatetime(endDate, format)

oneday= datetime.timedelta(days=1)

count=0whilebd !=ed:

ed= ed -oneday

count+= 1returncount#两个日期之间相差的秒defdatediff_seconds(beginDate, endDate):

format="%Y-%m-%d %H:%M:%S"if""notinbeginDateor':'notinbeginDate:

bformat="%Y-%m-%d"else:

bformat=formatif""notinendDateor':'notinendDate:

eformat="%Y-%m-%d"else:

eformat=format

starttime=strtodatetime(beginDate, bformat)

endtime=strtodatetime(endDate, eformat)

ret= endtime -starttimereturnret.days * 86400 +ret.seconds#获取两个时间段的所有时间,返回listdefgetDays(beginDate, endDate):

format="%Y-%m-%d"begin=strtodatetime(beginDate, format)

oneday= datetime.timedelta(days=1)

num= datediff(beginDate, endDate) + 1li=[]foriinrange(0, num):

li.append(datetostr(begin))

begin= begin +onedayreturnli#获取当前年份 是一个字符串defgetYear(date=datetime.date.today()):returnstr(date)[0:4]#获取当前月份 是一个字符串defgetMonth(date=datetime.date.today()):returnstr(date)[5:7]#获取当前天 是一个字符串defgetDay(date=datetime.date.today()):returnstr(date)[8:10]#获取当前小时 是一个字符串defgetHour(date=datetime.datetime.now()):returnstr(date)[11:13]#获取当前分钟 是一个字符串defgetMinute(date=datetime.datetime.now()):returnstr(date)[14:16]#获取当前秒 是一个字符串defgetSecond(date=datetime.datetime.now()):returnstr(date)[17:19]defgetNow():returndatetime.datetime.now()PRintdateadd_day(10)#2015-02-14 16:41:13.275000printgetYesterday()#2015-02-03printgetToday()#2015-02-04printgetDaysBefore(3)#['2015-02-03', '2015-02-02', '2015-02-01']printdatediff('2015-2-01','2015-10-05')#246printdatediff_seconds('2015-02-04','2015-02-05')#86400printdatediff_seconds('2015-02-04 22:00:00','2015-02-05')#7200printgetDays('2015-2-03','2015-2-05')#['2015-02-03', '2015-02-04', '2015-02-05']printdatetostr_secod(getNow())#2015-02-04 16:46:47printstr(getYear(dateadd_day(-50))) +'-'\+ getMonth() +'-'\+ getDay() +''\+ getHour() +':'\+ getMinute() +':'\+getSecond()#2014-02-04 16:59:04printgetNow()#2015-02-04 16:46:47.454000

备用

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航