我有一个访问表,其中包含一个“日期”字段。每条记录都有随机的日期。我已经编写了一个脚本,将所有记录追加到列表中,然后设置列表以筛选出唯一值:
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))
以下是我测试表格返回的结果:
['2010年07月06日', '2010年06月24日', '2010年07月05日', '2010年06月25日']
现在,我已经获得了“DATE_OBSERVATION”字段的唯一值,我想检测:
- 日期是否单一(即只有一个唯一日期被返回,因为这是每个记录中的日期)
- 如果日期是连续的日期范围(即所有日期都属于连续的范围)
- 如果日期是多个日期,但不是连续日期范围内的日期
非常感谢您的任何建议! Mike
itertools
文档页面中的“pairwise”方法来比较列表中的所有日期与下一个日期是否构成范围;对于单个日期,取第一个日期并检查其余日期是否都在同一天;如果这两种情况都不满足,则它们是不相关的日期。 - Daenythselect distinct date_observation from mytable order by date_observation desc
,并且不要将日期转换为字符串。 - Aprillion