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中反射用法实例
Mar 27 Python
在Python程序中操作文件之isatty()方法的使用教程
May 24 Python
利用Python实现图书超期提醒
Aug 02 Python
numpy使用技巧之数组过滤实例代码
Feb 03 Python
python2 与 pyhton3的输入语句写法小结
Sep 10 Python
Python实现网站表单提交和模板
Jan 15 Python
Python安装与基本数据类型教程详解
May 29 Python
利用Python进行图像的加法,图像混合(附代码)
Jul 14 Python
利用Python库Scapy解析pcap文件的方法
Jul 23 Python
python操作excel让工作自动化
Aug 09 Python
pytorch逐元素比较tensor大小实例
Jan 03 Python
基于python代码批量处理图片resize
Jun 04 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字典树(Trie树)定义与实现方法示例
2017/10/09 PHP
基于jquery的代码显示区域自动拉长效果
2011/12/07 Javascript
Checbox的操作含已选、未选及判断代码
2013/11/07 Javascript
jquery中append()与appendto()用法分析
2014/11/14 Javascript
javascript实现切换td中的值
2014/12/05 Javascript
使用requestAnimationFrame实现js动画性能好
2015/08/06 Javascript
JCrop+ajaxUpload 图像切割上传的实例代码
2016/07/20 Javascript
详解express与koa中间件模式对比
2017/08/07 Javascript
JavaScript 隐性类型转换步骤浅析
2018/03/15 Javascript
JavaScript Math对象和调试程序的方法分析
2019/05/13 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
详解element-ui动态限定的日期范围选择器代码片段
2020/07/03 Javascript
vue浏览器返回监听的具体步骤
2021/02/03 Vue.js
Flask框架学习笔记(一)安装篇(windows安装与centos安装)
2014/06/25 Python
python生成随机密码或随机字符串的方法
2015/07/03 Python
python实现简单socket通信的方法
2016/04/19 Python
Python常用的内置序列结构(列表、元组、字典)学习笔记
2016/07/08 Python
Django 接收Post请求数据,并保存到数据库的实现方法
2019/07/12 Python
Python3视频转字符动画的实例代码
2019/08/29 Python
浅谈tensorflow中张量的提取值和赋值
2020/01/19 Python
浅谈keras保存模型中的save()和save_weights()区别
2020/05/21 Python
Django REST Framework 分页(Pagination)详解
2020/11/30 Python
纯CSS3实现3D旋转书本效果
2016/03/21 HTML / CSS
css3遮罩层镂空效果的多种实现方法
2020/05/11 HTML / CSS
服务员自我评价
2014/01/25 职场文书
开朗女孩的自我评价
2014/02/10 职场文书
《盲人摸象》教学反思
2014/02/16 职场文书
语文教学随笔感言
2014/02/18 职场文书
制药工程专业职业生涯规划范文
2014/03/10 职场文书
经济类毕业生求职信
2014/06/26 职场文书
党政领导班子群众路线对照检查材料思想汇报
2014/09/27 职场文书
2015年防汛工作总结
2015/05/15 职场文书
公司员工奖惩制度
2015/08/04 职场文书
python 算法题——快乐数的多种解法
2021/05/27 Python
基于python定位棋子位置及识别棋子颜色
2021/07/26 Python
Python 可迭代对象 iterable的具体使用
2021/08/07 Python