+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

2019-08(17421)

2019-09(36497)

2019-10(17863)

2019-11(16331)

2019-12(27479)

2020-01(29868)

2020-02(403)

如何在Python中检测日期是否连续?

发布于2019-10-07 19:28     阅读(934)     评论(0)     点赞(4)     收藏(1)


我有一个带有“日期”字段的访问表。每个记录都有随机的日期。我构建了一个脚本,将所有记录追加到列表中,然后将列表设置为仅过滤出唯一值:

dateList = []
# cursor search through each record and append all records in the date 
# field to a python list
for row in rows:
   dateList.append(row.getValue("DATE_OBSERVATION").strftime('%m-%d-%Y'))

# Filter unique values to a set
newList = list(set(dateList))

返回(在我的测试表上):

['07 -06-2010','06 -24-2010','07 -05-2010','06 -25-2010']

现在,我具有“ DATE_OBSERVATION”字段的唯一值,我想检测是否:

  • 日期是单个的(即,仅返回一个唯一的日期,因为这是每条记录中的日期)
  • 如果日期是日期范围(即所有日期都属于连续范围)
  • 如果日期是多个日期,但不在连续日期范围内

我们欢迎所有的建议!麦克风


解决方案


不用滚动自己的consecutive函数,您可以简单地使用.toordinal()datetime对象方法将日期对象转换为整数序数日期集的最大值和最小值之差比该长度的长度大一个:

from datetime import datetime

date_strs = ['07-06-2010', '06-24-2010', '07-05-2010', '06-25-2010']
# date_strs = ['02-29-2012', '02-28-2012', '03-01-2012']
# date_strs = ['01-01-2000']
dates = [datetime.strptime(d, "%m-%d-%Y") for d in date_strs]

date_ints = set([d.toordinal() for d in dates])

if len(date_ints) == 1:
    print "unique"
elif max(date_ints) - min(date_ints) == len(date_ints) - 1:
    print "consecutive"
else:
    print "not consecutive"


所属网站分类: 技术文章 > python问答

作者:黑洞官方问答小能手

链接: http://www.pythonheidong.com/blog/article/133142/

来源:python黑洞网 www.pythonheidong.com

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

4 0

赞一赞 or 踩一踩

收藏该文
已收藏

评论内容:(最多支持255个字符)

相似文章

  您可以从Django ORM的超类模型中访问子床类模型吗?

  在cygwin / XP下完整安装Python的最佳方法?

  如何在python中以优雅的方式动态创建对象?

  使用Google App Engine进行网络/屏幕抓取-代码在python解释器中有效,但在GAE中不起作用

  带有范围的pyobjc索引访问器方法

  在PyQT和Boost.Python之间共享小部件

  pyinotify.ThreadedNotifier,未调用process_ *

  是否存在Python 3 SOAP客户端模块?[重复]

  使用带有SQLAlchemy的中间人表将属性作为列表的字典

  与py2exe捆绑其他可执行文件

优质资源排行榜

 python经典电子书大合集下载 下载次数 8136

 零基础java开发工程师视频教程全套,基础+进阶+项目实战(152G) 下载次数 7550

 零基础前端开发工程师视频教程全套,基础+进阶+项目实战(共120G) 下载次数 7442

 零基础大数据全套视频400G 下载次数 7006

 零基础php开发工程师视频教程全套,基础+进阶+项目实战(80G) 下载次数 6893

 零基础软件测试全套系统教程 下载次数 6505

 全套人工智能视频+pdf 下载次数 6441

 IOS全套视频教程 基础班+就业班 下载次数 4680

 编程小白的第一本python入门书(高清版)PDF下载 下载次数 3606

10  effective python编写高质量Python代码的59个有效方法 pdf下载 下载次数 3352

11  Python深度学习 pdf下载 下载次数 3148

12  笨办法学python pdf下载 下载次数 3080

13  Python Cookbook第三版中文PDF下载高清完整扫描原版 下载次数 3022

14  树莓派Python编程指南 pdf下载 下载次数 3009

15  python从入门到精通视频(全60集)python视频教程下载 下载次数 3007

16  python项目开发视频 下载次数 3002

17  使用python+pygame开发的小游戏《嗷大喵快跑》源码下载 下载次数 2999

18  黑马2017年java就业班全套视频教程 下载次数 2992

19  python实战项目 平铺图像板系统源码下载,适用于想要保存,标记和共享图像,视频和网页的用户 下载次数 2987

20  利用python实现程序内存监控脚本 下载次数 2987

21  Python基础教程 pdf下载 下载次数 2985

22  老男孩python自动化视频 下载次数 2982

23  老王python基础+进阶+项目视频教程 下载次数 2974

24  尚硅谷Go学科全套视频 下载次数 2972

25  某硅谷Python项目+AI课程+核心基础视频教程 下载次数 2968

26  Web前端实战精品课程 下载次数 2967

27  tron python小游戏 下载次数 2963

28  [小甲鱼]零基础入门学习Python 下载次数 2962

29  Python算法教程_中文版 pdf下载 下载次数 2962

30  老男孩python全栈开发15期 下载次数 2958

31  2017最新web前端开发完整视频教程附源码 下载次数 2948

32  最新全套完整JAVAWEB2018开发视频 下载次数 2926

33  流畅的Python PDF下载高清完整扫描原版 下载次数 2911

34  Spring boot实战视频6套下载 下载次数 2910

35  python全套视频十五期(116G) 下载次数 2908

36  Python高性能编程 pdf下载 下载次数 2903

37  Python项目实战 下载次数 2887

38  利用Python进行数据分析 pdf下载 下载次数 2884

39  30个小时搞定Python网络爬虫 含源码 下载次数 2883

40  简明python教程 (A Byte of Python)pdf下载 下载次数 2883

41  python全自动抢火车票教程-python视频教程下载 下载次数 2883

42  尚硅谷大数据之Hadoop视频 下载次数 2876

43  Python A~B~C~ python视频教程下载 下载次数 2866

44  数据结构与算法视频(小甲鱼讲解-全) 下载次数 2864

45  web小程序表白天数倒计时源码下载 下载次数 2863

46  python基础视频教程 下载次数 2862

47  go语言全套视频 下载次数 2855

48  清华学霸尹成Python爬虫视频-ok 下载次数 2846

49  黑马前端36期最全视频和代码 下载次数 2843

50  2018最新全套web前端视频教程+源码下载 下载次数 2841