Python迭代日期列表
Posted
技术标签:
【中文标题】Python迭代日期列表【英文标题】:Python iterating list of dates 【发布时间】:2017-09-04 22:21:21 【问题描述】:我有 10 年的数据,每天都有一个文件。每个文件的名称如下:
PRISM_ppt_stable_4kmD2_20151226_bil.bil(2015 年 12 月 26 日)
我想浏览每个文件并将日期相同但年份不同的文件放在一个列表中,因此应该有 365 个列表,每个列表包含 10 个项目。如果有人可以帮助我,我很难弄清楚如何让它发挥作用。
谢谢
【问题讨论】:
取文件名(减去 bil 后缀)并在_
上拆分,然后假设所有文件名的格式一致,取第 5 项并使用 datetime 模块将其转换为日期。在解析文件名时,将它们添加到包含解析的日期时间对象和文件名的元素列表中,然后使用 itertools.groupby
函数和适当的键函数来创建组。由于您没有对您的任务进行任何尝试,我怀疑您是否会让任何人为您编写代码,但如果您进行了任何尝试,发布它们将对您的事业有所帮助。
请考虑接受答案 ????如果它确实对你有帮助,当然
【参考方案1】:
使用 reg exps 捕获日期,然后使用字符串的[]
运算符对其进行处理。对于您的示例文件名,可以通过简单的 [0-9]8 正则表达式捕获日期(这意味着“数字字符正好 8 次)。
给你的示例代码:
import re
match = re.search(r'[0-9]8', fileName)
date = match.group()
year = date[:4]
【讨论】:
以上是关于Python迭代日期列表的主要内容,如果未能解决你的问题,请参考以下文章