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字符串的encode与decode研究心得乱码问题解决方法
Mar 23 Python
TF-IDF与余弦相似性的应用(二) 找出相似文章
Dec 21 Python
wtfPython—Python中一组有趣微妙的代码【收藏】
Aug 31 Python
PyCharm设置护眼背景色的方法
Oct 29 Python
Python实现繁?转为简体的方法示例
Dec 18 Python
使用Python正则表达式操作文本数据的方法
May 14 Python
Django 项目重命名的实现步骤解析
Aug 14 Python
Python Numpy 自然数填充数组的实现
Nov 28 Python
利用python3 的pygame模块实现塔防游戏
Dec 30 Python
Python用input输入列表的实例代码
Feb 07 Python
Python函数参数分类原理详解
May 28 Python
keras的ImageDataGenerator和flow()的用法说明
Jul 03 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 面向对象 final类与final方法
2010/05/05 PHP
PHP实现数据分页显示的简单实例
2016/05/26 PHP
Linux平台php命令行程序处理管道数据的方法
2016/11/10 PHP
PHP各种常见经典算法总结【排序、查找、翻转等】
2019/08/05 PHP
php新建文件的方法实例
2019/09/26 PHP
thinkphp5+layui实现的分页样式示例
2019/10/08 PHP
javascript编程起步(第六课)
2007/01/10 Javascript
document.designMode的功能与使用方法介绍
2007/11/22 Javascript
JavaScript 原型学习总结
2010/10/29 Javascript
JQuery中form验证出错信息的查看方法
2013/10/08 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
JS实现三个层重叠点击互相切换的方法
2015/10/06 Javascript
js实现微博发布小功能
2017/01/12 Javascript
jQuery插件imgAreaSelect基础讲解
2017/05/26 jQuery
基于JavaScript实现数码时钟效果
2020/03/30 Javascript
JS中使用react-tooltip插件实现鼠标悬浮显示框
2019/05/15 Javascript
element-ui表格合并span-method的实现方法
2019/05/21 Javascript
浅谈VUE防抖与节流的最佳解决方案(函数式组件)
2019/05/22 Javascript
Vue父子传递实例讲解
2020/02/14 Javascript
vue-resource post数据时碰到Django csrf问题的解决
2020/03/13 Javascript
js实现消灭星星(web简易版)
2020/03/24 Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
2020/06/19 Javascript
Python魔术方法详解
2015/02/14 Python
python通过加号运算符操作列表的方法
2015/07/28 Python
Python的Flask框架中配置多个子域名的方法讲解
2016/06/07 Python
python最小生成树kruskal与prim算法详解
2019/01/17 Python
如何在django中实现分页功能
2020/04/22 Python
台湾家适得:Homeget
2019/02/11 全球购物
综合实践教学反思
2014/01/31 职场文书
银行类自荐信
2014/02/04 职场文书
幼儿园元旦活动感言
2014/03/02 职场文书
新颖的化妆品活动方案
2014/08/21 职场文书
课外访万家心得体会
2014/09/03 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
阳光体育运动标语口号
2015/12/26 职场文书
MySQL中日期型单行函数代码详解
2021/06/21 MySQL