我是靠谱客的博主 任性小懒虫,最近开发中收集的这篇文章主要介绍datetime处理日期时间,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

datetime

    • 处理日期
    • 处理时刻

datetime的局限:能处理的时间,年份是公元1年至9999年

处理日期

import datetime #导入datetime模块
dtBirth = datetime.date(2000,9,27) #创建日期对象,日期为2000年9月27日
print(dtBirth.weekday()) #>>2 输出dtBirth代表的日期是星期几。0表示星期一
dtNow = datetime.date.today() #取今天日期,假设是 2020年8月15日
print(dtBirth < dtNow) #>>True 日期可以比大小
life = dtNow - dtBirth #取两个日期的时间差
print(life.days,life.total_seconds()) #>>7262 627436800.0
#两个日期相差7262天,即627436800.0秒
delta = datetime.timedelta(days = -10) #构造时间差对象,时间差为-10天
newDate = dtNow + delta #newDate代表的日期是dtNow的日期往前数10天
print(newDate.year,newDate.month,newDate.day,newDate.weekday()) 
#>>2020 8 5 2 2020年8月5日星期三
print(newDate.strftime(r'%m/%d/%Y')) #>>08/05/2020
newDate = datetime.datetime.strptime("2020.08.05", "%Y.%m.%d")
print(newDate.strftime("%Y%m%d")) #>>20200805

处理时刻

import datetime 
tm = datetime.datetime.now() #取当前时刻,精确到微秒
print(tm.year,tm.month,tm.day,tm.hour,tm.minute,tm.second,
tm.microsecond)
#>>2020 8 15 20 32 53 899669 假设当前时刻是2020年8月15日20时32分53秒899669微秒
tm = datetime.datetime(2017, 8, 10, 15, 56, 10,0)
#构造一个时刻,2017年8月10日15时56分10秒0微秒
print(tm.strftime("%Y%m%d %H:%M:%S")) #>>20170810 15:56:10
print(tm.strftime("%Y%m%d %I:%M:%S %p")) #20170810 03:56:10 PM
tm2 = datetime.datetime.strptime("2013.08.10 22:31:24", 
"%Y.%m.%d %H:%M:%S") #由字符串生成一个时间对象
delta = tm - tm2 #求两个时间的时间差
print(delta.days,delta.seconds,delta.total_seconds())
#>>1460 62686 126206686.0 #时间差是1460天零62686秒,总共126206686.0秒
delta = tm2 - tm
print(delta.days,delta.seconds,delta.total_seconds())
#>>-1461 23714 -126206686.0
delta = datetime.timedelta( days = 10, hours= 10,minutes=30,seconds=20)
#构造一个时间差,10天10小时30分20秒
tm2 = tm + delta
print(tm2.strftime("%Y%m%d %H:%M:%S")) #>>20170821 02:26:30
date=datetime.datetime()
date.strftime("%d")# 一年的多少天 

这下面就是具体需要获取的数据!
在这里插入图片描述

最后

以上就是任性小懒虫为你收集整理的datetime处理日期时间的全部内容,希望文章能够帮你解决datetime处理日期时间所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(29)

评论列表共有 0 条评论

立即
投稿
返回
顶部