Python datetime 模块详解

Python中常用于时间的模块有time、datetime 和 calendar,顾名思义 time 是表示时间(时、分、秒、毫秒)等,calendar 是表示日历时间的,本章先讨论 datetime 模块。

先看看 datetime 模块都有些什么

datetime 模块中有什么
序号描述类型
1MAXYEAR 9999,指能支持的最大年份int
2MINYEAR 1,指能支持的最小年份int
3date表示日期的类,常用的属性有year, month, daytype 
4datetime表示日期时间的类,常用的属性有hour, minute, second, microsecondtype
5datetime_CAPI后面详细描述'PyCapsule' 类
6sys各种系统信息'module'类
7time表示时间的类type 
8timedelta表示时间间隔,即两个时间点的间隔。在日期上做天days,小时hour,分钟,秒,毫秒,微妙的时间计算type 
9timezone表示时区的类type
10tzinfo时区的相关信息type

准确的说,datetime 模块中的常用类即date、datetime、time、timedelta、timezone、tzinfo。

其中date、datetime、time三个类有非常相似的属性和方法。

创建该三个类的示范如下:

import datetime
date_sample=datetime.date(2021,07,20) #年月日
time_sample=datetime.time(12,20,33) #时分秒
datetime_sample=datetime.datetime(2021,7,20,12,20,33)#年月日时分秒
datetime 模块中date、time、datetime 三个类的常用属性和方法
序号属性datetimedatetime
1max固定,datetime.date(9999, 12, 31)固定,datetime.time(23, 59, 59, 999999)固定 datetime.datetime(9999, 12, 31, 23, 59, 59, 999999)
2min固定,datetime.date(1, 1, 1)固定,datetime.time(0, 0)固定,datetime.datetime(1, 1, 1, 0, 0)
3microsecond NA返回 int 数值,实例里面的毫秒同time
4secondNA返回 int 数值,实例里面的秒同time
5minuteNA返回 int 数值,实例里面的分同time
6hour NA返回 int 数值,实例里面的时同time
7day返回 int 数值,实例里面的日期同date同date
8month返回 int 数值,实例里面的月份同date同date
9year返回 int 数值,实例里面的年份同date同date
10resolutione时间的最小单位,即两个不同时间的最小差值,datetime.timedelta(days=1)datetime.timedelta(microseconds=1)datetime.timedelta(microseconds=1)
11fold NA
tzinfotzinfo 可以是 None 或者 tzinfo 子类的实例对象同date同date
序号方法datetimedatetime
1ctime返回字符串类型的当前日期如 'Thu Sep  9 00:00:00 2021'NA同 date
2dst()NA 如果 tzinfo 属性是 None,则返回 None;否则返回 self.tzinfo.dst(self)同 time
3

fromisocalendar(year,

week,weekday)

返回datetime.date类型,从描述那一年第几个周第几天转换成描述年月日的格式NA返回datetime.datetime类型,从描述那一年第几个周第几天转换成描述年、月、日、时、分的格式
4fromisoformat(str)返回 date 类型,str 格式就是isoformat的返回格式即  '2021-09-09'返回 time 类型,str 格式就是isoformat的返回格式即  'hour:minute:second'返回 datetime 类型,str 格式就是isoformat的返回格式即  ''2021-09-02 12:40:22''
5fromordinal(int)返回 date 类型,int表示的数值就是从公元元年一月一号开始的第几天NA返回 datetmie 类型,int表示的数值就是从公元元年一月一号开始的第几天
6fromtimestamp(timestamp)返回 date 类型,POSIXNA返回 datetime 类型
7isocalendar()返回一个三元素的元组,即显示在calendar里面的year、week、weekydayNA返回一个三元素的元组,即显示在calendar里面的year、week、weekyday
8isoformat()返回字符串类型,格式如 '2021-09-09'返回字符串类型,格式如 '12:20:33'返回字符串类型,格式如 '2021-07-20T12:20:33'
9isoweekday()返回 int 类型,数字1-7代表周一到周日NA同date
9replacereplace(year=newYear,month=newMonth,day=newDay),更新数值,返回 date 类型的实例

replace(hour=x,minute=y,second=z,

microsecond=a,tzinfo=t) 更新数值,返回 time 类型的实例

replace(year=newYear,month=newMonth,day=newDay,hour=newHour,minute=newMinute,second=newSecond,microsecond=newMicrosecond),

更新数值,返回 datetime 类型的实例

10strftime(.....)strftime(格式),按照既定格式输出字符串格式strftime(格式),按照既定格式输出字符串格式

strftime(格式),按照既定格式输出字符串格式

11timetuple()返回的是time.struct_time类,(tm_year=xx, tm_mon=x, tm_mday=x, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=0, tm_yday=221, tm_isdst=-1)NA同 date
12today()返回 date 类型NA返回 datetime 类型
13toordinal()返回数值类型,提示是第几天NA返回 datetime 类型
14tzname()NAIt uses an instance of the class and returns the time zone name of the datetime object passed, as a string. It is an instance method and works on an aware object. For a naive object, it returns None.同 time
15utcoffset()utcoffset(...) Return self.tzinfo.utcoffset(self).
16weekday()返回从0开始的数字,比如今天是星期5,那么返回的就是4NA同date

附 python中时间日期格式化符号:

  1. %y 两位数的年份表示(00-99)
  2. %Y 四位数的年份表示(000-9999)
  3. %m 月份(01-12)
  4. %d 月内中的一天(0-31)
  5. %H 24小时制小时数(0-23)
  6. %I 12小时制小时数(01-12)
  7. %M 分钟数(00-59)
  8. %S 秒(00-59)

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

江南野栀子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值