Python2.7-datetime
datetime 模块用于操作日期时间
模块内定义了5个类:date,time,datetime,timedelta,tzinfo
1、timedelta对象,代表一个时间间隔
datetime.timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]]):所有参数均为可选,默认0.0,最终只有days,seconds和microseconds会保留在内部,来确保统一
类的属性:min,max,resolution
类的方法:+,-,*,//,abs(),str(),repr(),total_seconds()
2、date对象,代表一个日期(年月日)
datetime.date(year, month, day):所有参数都是必须的
类的属性:min,max,resolution
类的方法:+,-,<,today(),fromtimestamp(timestamp):从一个时间戳返回日期,时间戳可用time.time()获得,date.fromordinal(ordinal):ordinal为以从1年1月1日为1开始计数的数,返回对应日期
实例属性:year,month,day
实例方法:
replace(year, month, day):返回一个替换日期后的新对象,原对象不变
timetuple():返回time.struct_time((d.year, d.month, d.day, 0, 0, 0, d.weekday(), yday, -1))
toordinal():ordinal为以从1年1月1日为1开始计数的数,返回对应日期
weekday():星期一为0开始计数
isoweekday():星期一为1开始计数
isocalendar():每年第一个包含周四的星期为第一周,以此开始计数
isoformat():返回'YYYY-MM-DD'
__str__():同上
ctime():date(2002, 12, 4).ctime() == 'Wed Dec 4 00:00:00 2002'
strftime(format):控制格式化输出,%d、%m、%y等
__format__(format):同上
3、datetime对象,代表一个完整的日期和时间
datetime.datetime(year, month, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]])
类的属性:min,max,resolution
类的方法:+,-,<,today(),now([tz]),utcnow(),fromtimestamp(timestamp[, tz]),utcfromtimestamp(timestamp),fromordinal(ordinal),combine(date, time):把date对象和time对象组合,strptime(date_string, format):用format把date_string转成datetime对象
实例属性:year,month,day,hour,minute,second,microsecond,tzinfo
实例方法:
date():返回date对象
time():返回time对象,tzinfo为None
timetz():返回有tzinfo属性的time对象
replace([year[, month[, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]]]]):返回一个替换日期后的新对象,原对象不变
astimezone(tz):返回一个新的datetime对象,它拥有tz作为其tzinfo属性,可以使时间变为当地时间,同时又与之前的UTC时间一致,tz一定要是tzinfo的子类
utcoffset,dst,tzname():都返回self.tzinfo的对应方法
timetuple():返回time.struct_time((d.year, d.month, d.day, d.hour, d.minute, d.second, d.weekday(), yday, dst))
utctimetuple():如果实例对象是naive的,结果同上,如果是aware的,就会标准化到UTC时间
date拥有的方法它也同样拥有,因为是子类
4、time对象,代表某一天的时间,即小时,分钟,秒,微秒
datetime.time([hour[, minute[, second[, microsecond[, tzinfo]]]]])
类的属性:min,max,resolution
类的方法:比较,hash(用作字典的key),efficient pickling
实例属性:hour,minute,second,microsecond,tzinfo
实例方法:replace([hour[, minute[, second[, microsecond[, tzinfo]]]]]),isoformat(),__str__(),strftime(format),__format__(format),utcoffset(),dst(),tzname()
5、tzinfo对象,是一个抽象基类,不能直接实例化,子类若需要进行pickling,则__init__()方法不能带参数,否则可能会导致unpickle失败
创建一个具体子类时,根据需要重载以下方法
utcoffset(self, dt):UTC(协调世界时),返回当地时间的时区,UTC以东为正,以西为负,返回值需为timedelta对象
dst(self, dt):DST(夏令时)的设置,基本没用
tzname(self, dt):返回字符串,内容是dt对应的时区名字
以上方法都是对应于datetime和time对象的方法,datetime对象以自己作为参数,time对象传入None为参数,因此以上方法要考虑到这两种情况
格式控制如下:

Python2.7-datetime的更多相关文章
- Python2中生成时间戳(Epoch,或Timestamp)的常见误区
在Python2中datetime对象没有timestamp方法,不能很方便的生成epoch,现有方法没有处理很容易导致错误.关于Epoch可以参见时区与Epoch 0 Python中生成Epoch ...
- python中将datetime对象转化为时间戳
从mongodb中读取出来的记录中,时间存储在datetime对象里,返回给客户端的却要求是时间戳格式,因此需要将对应的datetime时间转化为时间戳,从stackoverflow上找到同样的问题和 ...
- IEEEXtreme 10.0 - Food Truck
这是 meelo 原创的 IEEEXtreme极限编程大赛题解 Xtreme10.0 - Food Truck 题目来源 第10届IEEE极限编程大赛 https://www.hackerrank.c ...
- python时间处理之datetime
python时间处理之datetime 标签: pythondateimportstringc 2012-09-12 23:21 20910人阅读 评论(0) 收藏 举报 分类: Python系列( ...
- Python自动化运维之9、模块之sys、os、hashlib、random、time&datetime、logging、subprocess
python模块 用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需 ...
- 如何把Python2的代码转换为Python3的代码
如何把Python2的代码转换为Python3的代码 注: 如果对于python2和python3不熟悉的,可以参考: [整理]总结Python2(Python 2.x版本)和Python3(Pyth ...
- Python 第五篇(上):算法、自定义模块、系统标准模块(time 、datetime 、random 、OS 、sys 、hashlib 、json和pickle)
一:算法回顾: 冒泡算法,也叫冒泡排序,其特点如下: 1.比较相邻的元素.如果第一个比第二个大,就交换他们两个. 2.对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对.在这一点,最后的元素应 ...
- python-Day5-深入正则表达式--冒泡排序-时间复杂度 --常用模块学习:自定义模块--random模块:随机验证码--time & datetime模块
正则表达式 语法: mport re #导入模块名 p = re.compile("^[0-9]") #生成要匹配的正则对象 , ^代表从开头匹配,[0 ...
- 交叉编译Python-2.7.13到ARM(aarch32)—— 支持sqlite3
作者:彭东林 邮箱:pengdonglin137@163.com QQ: 405728433 环境 主机: ubuntu14.04 64bit 开发板: qemu + vexpress-a9 (参考: ...
- 回味Python2.7——笔记4
一.Python 标准库概览 1.操作系统接口 os 模块提供了很多与操作系统交互的函数: >>> import os >>> os.getcwd() # Retu ...
随机推荐
- 为JavaScript正名--读你不知道的JavaScript(持续更新..)
你不知道的JavaScript上卷 JavaScript和Java的关系就像Carnival和Car的关系一样,八竿子打不着. JavaScript易上手,但由于其本身的特殊性,相比其他语言能真正掌握 ...
- 洛谷P3586 [POI2015]LOG(贪心 权值线段树)
题意 题目链接 Sol 显然整个序列的形态对询问没什么影响 设权值\(>=s\)的有\(k\)个. 我们可以让这些数每次都被选择 那么剩下的数,假设值为\(a_i\)次,则可以\(a_i\)次被 ...
- Android HandlerThread和IntentService
HandlerThreadHandlerThread继承了Thread,它是一种可以使用Handler的Thread,它实现也很简单,就是在run中通过Looper.prepare()来创建消息队列, ...
- DOS中的ECHO命令详解
1. 作为控制批处理命令在执行时是否显示命令行自身的开关 格式:ECHO [ON|OFF] 如果想关闭“ECHO OFF”命令行自身的显示,则需要在该命令行前加上“@”. 2. 显示当前ECHO ...
- Lodash学习笔记
有多年开发经验的工程师,往往都会有自己的一套工具库,称为utils.helpers等等,这套库一方面是自己的技术积累,另一方面也是对某项技术的扩展,领先于技术规范的制订和实现. Lodash就是这样的 ...
- SQLSERVER中的资源调控器
SQLSERVER中的资源调控器 转载自: http://wenku.baidu.com/view/0d92380cf78a6529647d5375.html http://www.cnblogs.c ...
- 使用 Azure Active Directory 管理 Azure 中的 HPC Pack 群集
Microsoft HPC Pack 2016 支持在 Azure 中部署 HPC Pack 群集的管理员将其与 Azure Active Directory (Azure AD) 集成. 请按照本文 ...
- 使用 HPC Pack 为 Azure 中的 Windows HPC 工作负荷创建和管理群集的选项
利用 Microsoft HPC Pack 和 Azure 的计算与基础结构服务,创建和管理基于云的高性能计算 (HPC) 群集. HPC Pack 是在 Azure 和 Windows Server ...
- 03-04_配置并启动Managed Server(受管服务器)
本文重点: 配置Managed Servers(受管服务器) 启动Managed Servers 原理 运行多个Managed Servers实例 一.配置Managed Se ...
- axios的get,post方法
学习vue和nodejs的过程当中,涉及到了axios,今天为了测试,写了get和post两个方法来跟node服务端交互,结果因为header和参数弄了好久,在此记录一下,同时分享; 由于刚接触axi ...