Python的时间模块datetime详解


Posted in Python onApril 17, 2017

datetime模块用于是date和time模块的合集,datetime有两个常量,MAXYEAR和MINYEAR,分别是9999和1.

datetime模块定义了5个类,分别是

1.datetime.date:表示日期的类

2.datetime.datetime:表示日期时间的类

3.datetime.time:表示时间的类

4.datetime.timedelta:表示时间间隔,即两个时间点的间隔

5.datetime.tzinfo:时区的相关信息

一、首先看一下datetime.date类:

date类有三个参数,datetime.date(year,month,day),返回year-month-day

方法:

1.datetime.date.ctime(),返回格式如 Sun Apr 16 00:00:00 2017

2.datetime.date.fromtimestamp(timestamp),根据给定的时间戮,返回一个date对象;datetime.date.today()作用相同

3.datetime.date.isocalendar():返回格式如(year,month,day)的元组,(2017, 15, 6)

4.datetime.date.isoformat():返回格式如YYYY-MM-DD

5.datetime.date.isoweekday():返回给定日期的星期(0-6),星期一=0,星期日=6

6.datetime.date.replace(year,month,day):替换给定日期,但不改变原日期

7.datetime.date.strftime(format):把日期时间按照给定的format进行格式化。

8.datetime.date.timetuple():返回日期对应的time.struct_time对象

time.struct_time(tm_year=2017, tm_mon=4, tm_mday=15, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=105, tm_isdst=-1)

9.datetime.date.weekday():返回日期的星期

python中时间日期格式化符号:

%y 两位数的年份表示(00-99)

%Y 四位数的年份表示(000-9999)

%m 月份(01-12)

%d 月内中的一天(0-31)

%H 24小时制小时数(0-23)

%I 12小时制小时数(01-12)

%M 分钟数(00=59)

%S 秒(00-59)

%a 本地简化星期名称

%A 本地完整星期名称

%b 本地简化的月份名称

%B 本地完整的月份名称

%c 本地相应的日期表示和时间表示

%j 年内的一天(001-366)

%p 本地A.M.或P.M.的等价符

%U 一年中的星期数(00-53)星期天为星期的开始

%w 星期(0-6),星期天为星期的开始

%W 一年中的星期数(00-53)星期一为星期的开始

%x 本地相应的日期表示

%X 本地相应的时间表示

%Z 当前时区的名称

%% %号本身

二、看一下datetime的time类

time类有5个参数,datetime.time(hour,minute,second,microsecond,tzoninfo),返回08:29:30

1.datetime.time.replace()

2.datetime.time.strftime(format):按照format格式返回时间

3.datetime.time.tzname():返回时区名字

4.datetime.time.utcoffset():返回时区的时间偏移量

三、datetime的datetime类

datetime类有很多参数,datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]]),返回年月日,时分秒

datetime.datetime.ctime()

datetime.datetime.now().date():返回当前日期时间的日期部分

datetime.datetime.now().time():返回当前日期时间的时间部分

datetime.datetime.fromtimestamp()

datetime.datetime.now():返回当前系统时间

datetime.datetime.replace()

datetime.datetime.strftime():由日期格式转化为字符串格式

datetime.datetime.now().strftime('%b-%d-%Y %H:%M:%S')

'Apr-16-2017 21:01:35'

datetime.datetime.strptime():由字符串格式转化为日期格式

datetime.datetime.strptime('Apr-16-2017 21:01:35', '%b-%d-%Y %H:%M:%S')
2017-04-16 21:01:35
四、datetime的timedelta类

datetime.datetime.timedelta用于计算两个日期之间的差值,例如:

>>> a=datetime.datetime.now()
>>> b=datetime.datetime.now()
>>> a
datetime.datetime(2017, 4, 16, 21, 21, 20, 871000)
>>> b
datetime.datetime(2017, 4, 16, 21, 21, 29, 603000)
>>> b-a
datetime.timedelta(0, 8, 732000)
>>> (b-a).seconds
8

或者

time1 = datetime.datetime(2016, 10, 20)
time2 = datetime.datetime(2015, 11, 2)
"""计算天数差值"""
print(time1-time2).days

"""计算两个日期之间相隔的秒数"""
print (time1-time2).total_seconds()
Python 相关文章推荐
简介Django框架中可使用的各类缓存
Jul 23 Python
Python实现在线暴力破解邮箱账号密码功能示例【测试可用】
Sep 06 Python
Python 3实战爬虫之爬取京东图书的图片详解
Oct 09 Python
python中不能连接超时的问题及解决方法
Jun 10 Python
从请求到响应过程中django都做了哪些处理
Aug 01 Python
Windows下Anaconda2安装NLTK教程
Sep 19 Python
详解django+django-celery+celery的整合实战
Mar 19 Python
Python计算不规则图形面积算法实现解析
Nov 22 Python
python实现的批量分析xml标签中各个类别个数功能示例
Dec 30 Python
TensorFlow保存TensorBoard图像操作
Jun 23 Python
python向企业微信发送文字和图片消息的示例
Sep 28 Python
解决Python中的modf()函数取小数部分不准确问题
May 28 Python
Python中标准模块importlib详解
Apr 16 #Python
Python 实现随机数详解及实例代码
Apr 15 #Python
Python 列表(List) 的三种遍历方法实例 详解
Apr 15 #Python
Python生成随机数组的方法小结
Apr 15 #Python
Python中文分词工具之结巴分词用法实例总结【经典案例】
Apr 15 #Python
Python结巴中文分词工具使用过程中遇到的问题及解决方法
Apr 15 #Python
Python编程实现生成特定范围内不重复多个随机数的2种方法
Apr 14 #Python
You might like
php smarty截取中文字符乱码问题?gb2312/utf-8
2011/11/07 PHP
php查询相似度最高的字符串的方法
2015/03/12 PHP
PHP接口并发测试的方法(推荐)
2016/12/15 PHP
Yii2实现自定义独立验证器的方法
2017/05/05 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
2013/09/29 Javascript
只需一行代码,轻松实现一个在线编辑器
2013/11/12 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
Bootstrap CSS布局之表格
2016/12/17 Javascript
JavaScript实现按键精灵的原理分析
2017/02/21 Javascript
微信小程序 在线支付功能的实现
2017/03/14 Javascript
JS实现的简单折叠展开动画效果示例
2018/04/28 Javascript
基于node+vue实现简单的WebSocket聊天功能
2020/02/01 Javascript
NodeJS配置CORS实现过程详解
2020/12/02 NodeJs
Python中用Ctrl+C终止多线程程序的问题解决
2013/03/30 Python
浅析Python中的多重继承
2015/04/28 Python
在主机商的共享服务器上部署Django站点的方法
2015/07/22 Python
python实现读取excel写入mysql的小工具详解
2017/11/20 Python
matplotlib作图添加表格实例代码
2018/01/23 Python
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
python 直接赋值和copy的区别详解
2019/08/07 Python
keras中的卷积层&池化层的用法
2020/05/22 Python
python使用bs4爬取boss直聘静态页面
2020/10/10 Python
Pycharm如何自动生成头文件注释
2020/11/14 Python
CSS3线性渐变简单实现以及该属性在浏览器中的不同
2012/12/12 HTML / CSS
国际领先的学术出版商:Springer
2017/01/11 全球购物
全球度假村:Club Med
2017/11/27 全球购物
澳大利亚最超值的自行车之家:Reid Cycles
2019/03/24 全球购物
我的祖国演讲稿
2014/05/04 职场文书
本科生导师推荐信范文
2014/05/18 职场文书
制冷与空调专业毕业生推荐信
2014/07/07 职场文书
群教班子对照检查材料
2014/08/26 职场文书
六年级语文教学反思
2016/03/03 职场文书
劳务派遣管理制度(样本)
2019/08/23 职场文书
MySQL 全文索引使用指南
2021/05/25 MySQL