Python中datetime常用时间处理方法
常用时间转换及处理函数:
importdatetime #获取当前时间 d1=datetime.datetime.now() printd1 #当前时间加上半小时 d2=d1+datetime.timedelta(hours=0.5) printd2 #格式化字符串输出 d3=d2.strftime('%Y-%m-%d%H:%M:%S') printd3 #将字符串转化为时间类型 d4=datetime.datetime.strptime(date,'%Y-%m-%d%H:%M:%S.%f') printd4
获取本周和本月第一天的日期:
#-*-coding:utf-8-*- importdatetime deffirst_day_of_month(): ''' 获取本月第一天 :return: ''' #now_date=datetime.datetime.now() #return(now_date+datetime.timedelta(days=-now_date.day+1)).replace(hour=0,minute=0,second=0, #microsecond=0) returndatetime.date.today()-datetime.timedelta(days=datetime.datetime.now().day-1) deffirst_day_of_week(): ''' 获取本周第一天 :return: ''' returndatetime.date.today()-datetime.timedelta(days=datetime.date.today().weekday()) if__name__=="__main__": this_week=first_day_of_week() last_week=this_week-datetime.timedelta(days=7) this_month=first_day_of_month() last_month=this_month-datetime.timedelta(days=(this_month-datetime.timedelta(days=1)).day) printthis_week printlast_week printthis_month printlast_month
#!/usr/bin/python #coding=utf-8 importdatetime """ datetime的功能强大 能支持0001年到9999年 """ """ 当前时间 返回的是一个datetime类型 now方法有个参数tz,设置时区类型。如果没有和方法today的效果一样 """ now=datetime.datetime.now() #UTC时间 datetime.datetime.utcnow() attrs=[ ("year","年"),('month',"月"),("day","日"),('hour',"小时"),('minute',"分"),('second',"秒"),('microsecond',"毫秒"),( 'min',"最小"),('max',"最大"), ] fork,vinattrs: "now.%s=%s#%s"%(k,getattr(now,k),v) """ 返回一个time结构 """ now.timetuple() """ 返回一个date类型 """ now.date() """ 返回一个time类型 """ now.time() """ 当前星期几。星期一是0,星期于是6 注意这里是方法,不是属性哦。 """ now.weekday() """ 当前星期几。星期一是1,星期于是7 注意这里是方法,不是属性哦。 """ now.isoweekday() """ 修改当前时间。比如修改成当月1号 """ now.replace(day=1) past=datetime.datetime(2010,11,12,13,14,15,16) """ 进行比较运算 返回的是timedelta类型 """ now-past """ 转成字符串 详细规则见Time篇 """ strdatetime=now.strftime("%Y-%m-%d%H:%M:%S") """ 字符串生成datetime对象 """ datetime.datetime.strptime(strdatetime,"%Y-%m-%d%H:%M:%S")
以上所述就是本文的全部内容了,希望大家能够喜欢。