Python - 基础 - 时间日期处理小结备忘
原则,以datetime为中心,起点或中转,转化为目标对象,涵盖了大多数业务场景中需要的日期转换处理。
步骤:
- 掌握几种对象及其关系
- 了解每类对象的基本操作方法
- 通过转化关系转化
涉及对象:
datetime
import datetime |
timestamp
import time |
- 时间元组 (
time tuple)
import time |
- 字符串 (
string)
import datetime |
- 日期 (
date)
import datetime |
datetime基本操作:
- 获取当前
datetime
import datetime |
- 获取当天
date
datetime.date.today() |
- 获取明天/前N天
明天:
datetime.date.today() + datetime.timedelta(days=1) |
三天前:
datetime.datetime.now() - datetime.timedelta(days=3) |
- 获取当天开始和结束时间 (00:00:00 - 23:59:59)
datetime.datetime.combine(datetime.date.today(), datetime.time.min) |
- 获取两个
datetime的时间差
(datetime.datetime(2015,1,13,12,0,0) - datetime.datetime.now()).total_seconds() |
- 获取本周/本月/上月最后一天
本周:
today = datetime.date.today() |
本月:
import calendar |
获取上个月的最后一天(可能跨年):
today = datetime.date.today() |
关系转换:
几个关系之间的转化:Datetime Object / String / timestamp / time tuple
关系转换例子:datetime <=> string
datetime -> string
import datetime |
string -> datetime
import datetime |
datetime <=> timetuple
datetime -> timetuple
import datetime |
timetuple -> datetime
# timetuple => timestamp => datetime [看后面datetime<=>timestamp] |
datetime <=> date
datetime -> date
import datetime |
date -> datetime
datetime.date.today() |
datetime <=> timestamp
datetime -> timestamp
now = datetime.datetime.now() |
timestamp -> datetime
datetime.datetime.fromtimestamp(1421077403.0) |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 kami's blog!