python中的时间序列处理模块(二):datetime模块之date类详解

1、关于时间的一些基础知识的介绍,请看我的另外一篇文章

  https://blog.csdn.net/weixin_41261833/article/details/103892158

2、datatime模块

  datatime模块是在time模块的基础之上做了封装,提供了更多更好用的类供我们使用,常用的有date、time、datetime、timedelta、tzinfo。但是为了更灵活的处理时间,最好是将time模块和datetime模块中的精髓学习到。

  • ① date类:主要用于处理年、月、日;
  • ② time类:主要用于处理时、分、秒;
  • ③ datetime类:date类和time类的综合使用,可以处理年、月、日、时、分、秒;
  • ④ timedelta类:主要用于做时间加减的;
  • ⑤ tzinfo类:时区类;

3、date类

1)静态方法和属性:直接通过类名调用;
today():返回本地时间的一个date对象;

fromtimestamp(timestamp):给定一个时间戳,返回一个date对象;# 这个函数很有用

max:date对象能够表示的最大时间;

min:date对象能够表示的最小时间;

resolution:date对象表示时间的最小单位,这里指的是天;

操作如下:

from datetime import *
import time

date.today()
date.fromtimestamp(time.time())
date.max
date.min
date.resolution

结果如下:
在这里插入图片描述

2)其它常用方法和属性:通过date对象才能调用;
--- "属性"
d.year、d.month、d.day:年、月、日;

--- "方法"
d.replace(year=,month=,day=):生成一个新的日期对象,用参数指定的年,月,日代替原有对象中的属性。(原有对象仍保持不变)

d.timetuple():返回时间元组struct_time格式的日期;

d.weekday():返回weekday,如果是星期一,返回0;如果是星期2,返回1,以此类推;
d.isoweekday():返回weekday,如果是星期一,返回1;如果是星期2,返回2,以此类推;

d.isocalendar():返回(year,week,weekday)格式的元组;

d.isoformat():返回格式如'YYYY-MM-DD'的字符串;

d.strftime(format):传入任意格式符,可以输出任意格式的日期表示形式;

先构造一个date对象:

d = date.fromtimestamp(1334567890)
display(d)

结果如下:
在这里插入图片描述
① d.year、d.month、d.day:年、月、日;

d = date.fromtimestamp(1334567890)
display(d)

display(d.year,d.month,d.day)

结果如下:
在这里插入图片描述

② d.replace(year=,month=,day=):传入指定的year或month或day,生成一个新日期的date对象,但不改变原有的date对象;

d = date.fromtimestamp(1334567890)
display(d)

yesterday = d.replace(day=15)
display(yesterday)

tommorrow = d.replace(day=17)
display(tommorrow)

z = d.replace(year=2015,month=12)
display(z)

display(d)

操作如下:
在这里插入图片描述

③ d.timetuple():返回时间元组struct_time格式的日期;

d = date.fromtimestamp(1334567890)
display(d)

display(d.timetuple())

结果如下:
在这里插入图片描述
④ d.weekday()和d.isoweekday():在中国,主要以d.isoweekday()的使用为主;

  • d.weekday():返回weekday,如果是星期一,返回0;如果是星期2,返回1,以此类推;
  • d.isoweekday():返回weekday,如果是星期一,返回1;如果是星期2,返回2,以此类推;
d = date.fromtimestamp(1334567890)
display(d)

display(d.weekday())
display(d.isoweekday())

结果如下:
在这里插入图片描述

⑤ d.isocalendar():返回(year,week,weekday)格式的元组;

  • year:表示当前日期的年份;
  • week:表示当前日期是一年中的第几周;
  • weekday:表示当前日期是星期几;
d = date.fromtimestamp(1334567890)
display(d)

display(d.isocalendar())

结果如下:
在这里插入图片描述
注意:d.isocalendar()函数的返回值较为特殊,需要特别注意。

⑥ d.isoformat():返回固定格式如’YYYY-MM-DD’的字符串;

d = date.fromtimestamp(1334567890)
display(d)

display(d.isoformat())

结果如下:
在这里插入图片描述

⑦ d.strftime(format):传入任意格式符,可以输出任意格式的日期表示形式。
常用的格式符如下所示:
在这里插入图片描述
操作如下:

d = date.fromtimestamp(1334567890)
display(d)

d = d.strftime("%Y{y}%m{m}%d{d}").format(y="年",m="月",d="日")
display(d)

结果如下:
在这里插入图片描述
注意:d.strftime(format)函数很有用,要特别注意。只不过在显示中文这里可能会出现问题,我把这个最难的给你处理了。

发布了50 篇原创文章 · 获赞 64 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_41261833/article/details/103895079