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")
以上所述就是本文的全部内容了,希望大家能够喜欢。