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 相关文章推荐
python BeautifulSoup设置页面编码的方法
Apr 03 Python
Python制作刷网页流量工具
Apr 23 Python
Django 路由系统URLconf的使用
Oct 11 Python
详解Python的数据库操作(pymysql)
Apr 04 Python
python采集百度搜索结果带有特定URL的链接代码实例
Aug 30 Python
Django 自定义分页器的实现代码
Nov 24 Python
python中p-value的实现方式
Dec 16 Python
Python爬虫库BeautifulSoup的介绍与简单使用实例
Jan 25 Python
Python如何实现小程序 无限求和平均
Feb 18 Python
如何理解python对象
Jun 21 Python
Python 使用xlwt模块将多行多列数据循环写入excel文档的操作
Nov 10 Python
python for循环赋值问题
Jun 03 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
PHPMailer邮件类利用smtp.163.com发送邮件方法
2008/09/11 PHP
php使用cookie显示用户上次访问网站日期的方法
2015/01/26 PHP
php+mysql实现的二级联动菜单效果详解
2016/05/10 PHP
PHP生成加减算法方式的验证码实例
2018/03/12 PHP
niceTitle 基于jquery的超链接提示插件
2010/05/31 Javascript
jQuery下的动画处理总结
2013/10/10 Javascript
JQ获取动态加载的图片大小的正确方法分享
2013/11/08 Javascript
angularjs的一些优化小技巧
2014/12/06 Javascript
Vue.js自定义指令的用法与实例解析
2017/01/18 Javascript
利用node.js制作命令行工具方法教程(一)
2017/06/22 Javascript
JavaScript中document.referrer的用法详解
2017/07/04 Javascript
说说Vue.js中的functional函数化组件的使用
2019/02/12 Javascript
如何用JS模拟实现数组的map方法
2020/07/30 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
从零学python系列之新版本导入httplib模块报ImportError解决方案
2014/05/23 Python
Python实现的购物车功能示例
2018/02/11 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
2018/06/04 Python
TensorFlow的权值更新方法
2018/06/14 Python
python实现转圈打印矩阵
2019/03/02 Python
如何基于pandas读取csv后合并两个股票
2020/09/25 Python
Scrapy 配置动态代理IP的实现
2020/09/28 Python
详解background属性的8个属性值(面试题)
2020/11/02 HTML / CSS
CSS3中的弹性布局em运用入门详解 1em等于多少像素
2021/02/08 HTML / CSS
webapp字号大小跟随系统字号大小缩放的示例代码
2018/12/26 HTML / CSS
HTML5事件方法全部汇总
2016/05/12 HTML / CSS
销售部主管岗位职责
2013/12/18 职场文书
自我鉴定怎么写
2014/01/12 职场文书
运动会通讯稿150字
2014/02/15 职场文书
银行委托书范本
2014/04/04 职场文书
家长对老师的评语
2014/04/18 职场文书
小学校长竞聘演讲稿
2014/05/16 职场文书
县政府办公室领导班子对照检查材料思想汇报
2014/09/28 职场文书
刑事和解协议书范本
2014/11/19 职场文书
2014年音乐教师工作总结
2014/12/03 职场文书
2015年母亲节活动总结
2015/02/10 职场文书
解决Django transaction进行事务管理踩过的坑
2021/04/24 Python