时间模块-datetime

一.datetime模块有哪几个类?

  • date 类: datetime模块中分管对年,月,日的处理
  • time 类: 分管对时钟,分钟,秒的处理
  • datetime 类: date+time,分管年,月,日,时钟,分钟,秒的处理
  • timedelta 类: 分管时间间隔的处理,比如今天之前的1000天是哪一天,不用转换为时间戳,再计算,可以直接调用对象处理
  • 其他 类

二.datetime类

一般调用的时候,用的最多的也是这个datetime类(毕竟它会的比较多@_@)

from datetime import datetime  # 前面一个是模块的名称,后面一个是类的名称,建议大家调用datetime类的时候采取这种方式,简单而清晰

1.怎么获取这个类的对象?

对面向对象编程有些了解的都知道,既然类都出现了,就一定有这个类的对象,可是有哪些方法获取?

  • 获取指定日期和时间:
from datetime import datetime
special = datetime(2017, 8, 9, 12, 20, 20)  # 类的前三个参数年,月,日必须有
 # special是一个datetime对象,print输出,得到的是:2017-08-09 12:20:20
  • 获取当前日期和时间
from datetime import datetime
now = datetime.now()  # 获取此时的这个时间刻度的datetime对象

2.datetime对象和时间戳之间的转换

  • datetime对象转换为时间戳:
time_stamp = special.timestamp()  # 1502252420.0
  • 时间戳转换为datetime对象:
another_special = datetime.fromtimestamp(time_stamp)  # 2017-08-09 12:20:20(本地时间:东八区)
another_special_utc = datetime.utcfromtimestamp(time_stamp)  # 2017-08-09 04:20:20(UTC标准时区时间,比本地时间晚八个小时)

3.datetime对象和时间字符串之间的转换

  • datetime对象转换为时间字符串:
from datetime import datetime
special = datetime(2017, 8, 9, 12, 20, 20) # special为datetime对象
time_string = special.strftime('%Y-%m-%d %X')  # 2017-08-09 12:20:20
# 注:datetime类中的strftime()是对象方法,调用该方法的是一个实例化的datetime对象;不像time中,调用的是time类
  • 时间字符串转换为datetime对象:
again_special = datetime.strptime(time_string, '%Y-%m-%d %X')  # datetime对象

注:

  1. datetime中,时间戳和时间字符串,以及datetime对象三者之间,其中datetime是桥梁,是中间人!
  2. 在上述方法中,除了strftime方法和timestamp()是对象方法外,其他的都是类方法直接调用的

Last:时间间隔处理(timedelta)

>>> from datetime import datetime, timedelta
>>> now = datetime.now()
>>> print(now)
2017-08-09 12:02:08.850243
>>> s1 = now + timedelta(hours=10)  # 十小时后是什么时间?
>>> print(s1)
2017-08-09 22:02:08.850243
>>> s2 = now - timedelta(days=1000)  # 1000天前是什么日子?
>>> print(s2)
2014-11-13 12:02:08.850243
>>> s3 = now + timedelta(days=2, hours=43)  # 两天后,再多个43小时后是什么日子?
>>> print(s3)
2017-08-13 07:02:08.850243 
>>>

其他:

datetime对象还有许多非常有用的属性,如:对象.year,对象.month

两篇非常有用的datetime文章:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 参考:http://blog.csdn.net/wuce_bai/article/details/50827393...
    Babyzpj阅读 874评论 0 0
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,848评论 18 399
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,269评论 19 139
  • 贤良逢乱世, 满腹忧国诗。 平生不称意, 清贫无完衣。 ...
    1314清风居士阅读 558评论 0 3
  • 中午在食堂吃饭的时候,我聊起了今天遇到了一个贱人。 昨天凌晨我在公号里推了一张照片,早上醒来我习惯性的打开手机上的...
    拾点以后阅读 206评论 0 0