python计算时间差的方法


Posted in Python onMay 20, 2015

本文实例讲述了python计算时间差的方法。分享给大家供大家参考。具体分析如下:

1、问题:

给定你两个日期,如何计算这两个日期之间间隔几天,几个星期,几个月,几年?

2、解决方法:

标准模块datetime和第三方包dateutil(特别是dateutil的rrule.count方法)能非常简单迅速的帮你解决这个问题。

from dateutil import rrule
import datetime
def weeks_between(start_date, end_date):
  weeks = rrule.rrule(rrule.WEEKLY, dtstart=start_date, until=end_date)
  return weeks.count( )

rrule方法允许你根据日期(DAILY),星期(WEEKLY),年(YEARLY)来设置尺度计算。下面用一段代码来测试一下:

if _ _name_ _=='_ _main_ _':
  starts = [datetime.date(2005, 01, 04), datetime.date(2005, 01, 03)]
  end = datetime.date(2005, 01, 10)
  for s in starts:
    days = rrule.rrule(rrule.DAILY, dtstart=s, until=end).count( )
    print "%d days shows as %d weeks "% (days, weeks_between(s, end))

将输出这样的结果:

7 days shows as 1 weeks
8 days shows as 2 weeks

Rrule计算是以整数计算的,它不会返回0.5星期之类的结果,所以8天会被算为两个星期。

当然你可以不必定义一个尺寸,直接一句return rrule.rrule(rrule.WEEKLY, dtstart=start_date, until=end_date).count( )就可以得到结果。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
Python监控主机是否存活并以邮件报警
Sep 22 Python
python之PyMongo使用总结
May 26 Python
Python实现将一个正整数分解质因数的方法分析
Dec 14 Python
解决python os.mkdir创建目录失败的问题
Oct 16 Python
python利用thrift服务读取hbase数据的方法
Dec 27 Python
python单线程文件传输的实例(C/S)
Feb 13 Python
python顺序执行多个py文件的方法
Jun 29 Python
Python 计算任意两向量之间的夹角方法
Jul 05 Python
pymysql 插入数据 转义处理方式
Mar 02 Python
基于CentOS搭建Python Django环境过程解析
Aug 24 Python
简述python&pytorch 随机种子的实现
Oct 07 Python
python+opencv3.4.0 实现HOG+SVM行人检测的示例代码
Jan 28 Python
python中sys.argv参数用法实例分析
May 20 #Python
python文件操作之目录遍历实例分析
May 20 #Python
Python中使用strip()方法删除字符串中空格的教程
May 20 #Python
python字典排序实例详解
May 20 #Python
在Python中操作字符串之startswith()方法的使用
May 20 #Python
Python中splitlines()方法的使用简介
May 20 #Python
在Python中用split()方法分割字符串的使用介绍
May 20 #Python
You might like
PHP 选项及相关信息函数库
2006/12/04 PHP
global.php
2006/12/09 PHP
php使用正则表达式提取字符串中尖括号、小括号、中括号、大括号中的字符串
2020/04/05 PHP
PHP实现的简易版图片相似度比较
2015/01/07 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
jqTransform form表单美化插件使用方法
2012/07/05 Javascript
js中判断对象是否为空的三种实现方法
2013/12/23 Javascript
快速解决jQuery与其他库冲突的方法介绍
2014/01/02 Javascript
js判断页面中是否有指定控件的简单实例
2014/03/04 Javascript
javascript异步处理工作机制详解
2015/04/13 Javascript
基于jQuery实现鼠标点击导航菜单水波动画效果附源码下载
2016/01/06 Javascript
详解Angular.js指令中scope类型的几种特殊情况
2017/02/21 Javascript
浅谈vue的几种绑定变量的值 防止其改变的方法
2018/03/01 Javascript
JavaScript中.min.js和.js文件的区别讲解
2019/02/13 Javascript
jQuery选择器之基本过滤选择器用法实例分析
2019/02/19 jQuery
vue中格式化时间过滤器代码实例
2019/04/17 Javascript
vue中created和mounted的区别浅析
2019/08/13 Javascript
微信小程序canvas绘制圆角base64图片的实现
2019/08/18 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
vue中使用WX-JSSDK的两种方法(推荐)
2020/01/18 Javascript
用Python的Django框架来制作一个RSS阅读器
2015/07/22 Python
Python首次安装后运行报错(0xc000007b)的解决方法
2016/10/18 Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
2019/04/30 Python
Python批量生成幻影坦克图片实例代码
2019/06/04 Python
python如何实现视频转代码视频
2019/06/17 Python
python获取指定日期范围内的每一天,每个月,每季度的方法
2019/08/08 Python
退伍老兵事迹材料
2014/01/31 职场文书
中学家长会邀请函
2014/02/03 职场文书
趣味活动策划方案
2014/02/08 职场文书
学习实践科学发展观心得体会
2014/09/10 职场文书
2014年保卫部工作总结
2014/11/21 职场文书
迟到检讨书范文
2015/01/27 职场文书
2015年教学工作总结
2015/04/02 职场文书
仓库统计员岗位职责
2015/04/14 职场文书
2015年大学辅导员工作总结
2015/05/12 职场文书
个人的事迹材料怎么写
2019/04/24 职场文书