Python日期时间操作学习
2016-01-22 00:00
706 查看
摘要: Python日期时间操作学习,涉及datetime time calendar三个模块的理解。
datetime 模块中涉及的time、datetime两个时间表示类,都有naive(不包含时区、夏令时信息)和aware(包含时区和夏令时信息)两种类型。主要看实例属性中tzinfo是否为None。
date、time、datetime的Class attributes都定义了各自相关的属性的取值区间;Instance attributes定义了相关属性的读取接口。
timedelta表示时间差。注意对一个给定timedelta, td - timedelta 和 td + (-timedelta)可能并不相等,因为-timedelta可能会有溢出。
datetime.astimezone(tz)提供了时区之前时间切换的方法。
datetime.tzinfo,python2.7 manual中明确说明了:The datetime module does not supply any concrete subclasses of tzinfo。 一个比较常见的是由第三方提供的pytz模块来提供时区信息。
Unix Timestamp: seconds since Jan 01 1970. (UTC),这是一个绝对的值,和时区无关,也即在任意给定时刻,所有时区上的unix timestamp是一样的。
可以通过time.time()获取当前时间戳
提供一个time.struct_time来封装时间的解析结果,并且和datetime中的对象建立联系。
使用time.mktime()将一个本地(不是UTC时间,也无法指定其他时区)时间转化成Unix 推timestamp
datetime模块中涉及有以下类:
类名 | 描述 |
datetime.date | 理想化的日期对象,假设使用格力高历,有year, month, day三个属性 |
datetime.time | 理想化的时间对象,不考虑闰秒(即认为一天总是24*60*60秒),有hour, minute, second, microsecond, tzinfo五个属性 |
datetime.datetime | datetime.date和datetime.time的组合 |
datetime.timedelta | 表示两个datetime.date, datetime.time或者datetime.datetime之间的差 |
datetime.tzinfo | 时区信息,datetime中仅定义了抽象接口,并不提供具体实现 |
date、time、datetime的Class attributes都定义了各自相关的属性的取值区间;Instance attributes定义了相关属性的读取接口。
timedelta表示时间差。注意对一个给定timedelta, td - timedelta 和 td + (-timedelta)可能并不相等,因为-timedelta可能会有溢出。
datetime.astimezone(tz)提供了时区之前时间切换的方法。
datetime.tzinfo,python2.7 manual中明确说明了:The datetime module does not supply any concrete subclasses of tzinfo。 一个比较常见的是由第三方提供的pytz模块来提供时区信息。
Unix Timestamp: seconds since Jan 01 1970. (UTC),这是一个绝对的值,和时区无关,也即在任意给定时刻,所有时区上的unix timestamp是一样的。
time模块
提供了对timestamp的一些操作可以通过time.time()获取当前时间戳
提供一个time.struct_time来封装时间的解析结果,并且和datetime中的对象建立联系。
使用time.mktime()将一个本地(不是UTC时间,也无法指定其他时区)时间转化成Unix 推timestamp
calendar 模块
在datetime模块的基础上,提供了对Gregorian calendar的操作——主要是为了方便做日历输出和日期遍历(This module allows you to output calendars like the Unix cal program, and provides additional useful functions related to the calendar.)相关文章推荐
- [Python]使用中的一些小方法集合
- Python学习第五天
- python动态记载模块
- Python获取脚本所在目录的正确方法
- ubuntu的python开发环境准备
- leetcode 147. Insertion Sort List (Python版)
- 【深度学习与Theano】Theano学习之初体验
- 普通方法,静态方法和类方法
- python基础知识-set集合
- python核心编程-第一个GUI程序
- s12-day03-work01 python修改haproxy配置文件(初级版本)
- 《笨办法学Python》 第19课手记
- python机器学习:从入门到精通
- python excel神器xlwings
- python中去除列表重复元素的方法汇总
- python_轻量级爬虫开发4
- python随机数的产生
- python_轻量级爬虫开发3
- robot framework 安装
- Python生成器(yield)