Python datetime模块详解与使用

一、datetime模块介绍

(一)、datetime模块中包含如下类:

类名

功能说明

date

日期对象,常用的属性有year, month, day

time

时间对象

datetime

日期时间对象,常用的属性有hour, minute, second, microsecond

datetime_CAPI

日期时间对象C语言接口

timedelta

时间间隔,即两个时间点之间的长度

tzinfo

时区信息对象

(二)、datetime模块中包含的常量

常量

功能说明

用法

返回值

MAXYEAR

返回能表示的最大年份

datetime.MAXYEAR

9999

MINYEAR

返回能表示的最小年份

datetime.MINYEAR

1

二、date类

(一)、date对象构成

1、date对象由year年份、month月份及day日期三部分构成:

 

date(year,month,day)

 

2、 通过year, month, day三个数据描述符可以进行访问:

 

>>> a = datetime.date.today()

>>> a

datetime.date(2017, 3, 22)

>>> a.year

2017>>> a.month

3>>> a.day

22

 

3、当然,你也可以用__getattribute__(...)方法获得上述值:

 

>>> a.__getattribute__('year')

2017>>> a.__getattribute__('month')

3>>> a.__getattribute__('day')

22

 

(二)、date对象中包含的方法与属性

1、用于日期比较大小的方法

方法名

方法说明

用法

__eq__(…)

等于(x==y)

x.__eq__(y)

__ge__(…)

大于等于(x>=y)

x.__ge__(y)

__gt__(…)

大于(x>y)

x.__gt__(y)

__le__(…)

小于等于(x<=y)

x.__le__(y)

__lt__(…)

小于(x

x.__lt__(y)

__ne__(…)

不等于(x!=y)

x.__ne__(y)

 

以上方法的返回值为True\False

示例如下:

 

>>> a=datetime.date(2017,3,1)

>>> b=datetime.date(2017,3,15)

>>> a.__eq__(b)

False>>> a.__ge__(b)

False>>> a.__gt__(b)

False>>> a.__le__(b)

True>>> a.__lt__(b)

True>>> a.__ne__(b)

True

 

2、获得二个日期相差多少天

使用__sub__(...)和__rsub__(...)方法,其实二个方法差不太多,一个是正向操作,一个是反向操作:

方法名

方法说明

用法

__sub__(…)

x - y

x.__sub__(y)

__rsub__(…)

y - x

x.__rsub__(y)

示例如下:

 

>>> a

datetime.date(2017, 3, 22)

>>> b

datetime.date(2017, 3, 15)

>>> a.__sub__(b)

datetime.timedelta(7)

>>> a.__rsub__(b)

datetime.timedelta(-7)

 

计算结果的返回值类型为datetime.timedelta, 如果获得整数类型的结果则按下面的方法操作:

 

>>> a.__sub__(b).days

7

>>> a.__rsub__(b).days

-7

 

3、ISO标准化日期

 

如果想要让所使用的日期符合ISO标准,那么使用如下三个方法:

1).* isocalendar(...)*:返回一个包含三个值的元组,三个值依次为:year年份,week number周数,weekday星期数(周一为1…周日为7):

示例如下

>>>

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值