从字典的键中选择两点之间的所有日期时间对象

金翅雀

我有一个数不胜数的文件,文件名中嵌入了日期。我将文件解析为dict,其中键是从名称中提取的日期时间,而值是路径。

我想从日期时间在时间​​A和时间B之间的集合中选择所有文件。

我的第一个想法是将字典转换为元组列表,然后进行排序。

file_list = [(k, v) for k, v in file_dict.items()]
file_list = sorted(file_list, key = lambda x: x[0])

然后,我将使用for循环从两点之间的列表中进行选择。

first = -1
last = -1
for i in range(len(file_list)):
    if first < 0 and file_list[i] > time_a:
        first = i
    if last < 0 and file_list[i] > time_b:
        last = i
if first > -1 and last > -1:
    new_dict = {k: v for k, v in file_list[first:last]}
else:
    whatever()

严格来说,这已经足够好了,但是看起来并不优雅。有没有更好的方法来选择这些日期?

com

进行一行列表理解时,可以在表达式中过滤输出,如下面的代码所示。如果A和B之间没有日期,则您将得到一个空字典,因为所有项目都不符合if条件。

 {k:v for k, v in file_list if k >= time_a and k <= time_b}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在两点之间检测游戏对象

来自分类Dev

在两点之间绘制SceneKit对象

来自分类Dev

在两点之间检测游戏对象

来自分类Dev

通过点收集中的所有其他点,在两点之间的最短路径

来自分类Dev

查找两个日期时间点之间的所有数据

来自分类Dev

获取目标C中两点之间的所有X,Y坐标

来自分类Dev

C++中矩阵两点之间的所有可能路径

来自分类Dev

如何找到圆周上两点之间的所有角度

来自分类Dev

android Google地图中两点之间的距离/时间

来自分类Dev

通过遍历点集合中的所有其他点,在两点之间的最短路径

来自分类Dev

如何选择两个日期之间的所有时间?

来自分类Dev

如何在Unity中的两点之间移动对象?

来自分类Dev

选择两个日期之间的所有日期

来自分类Dev

如何使用类型为timestamptz的字段在postgres中选择两个日期之间的所有条目

来自分类Dev

有什么办法可以在C#代码的两点之间获取所有数据(Linq-to-sql)

来自分类Dev

从两列中选择小于的日期时间

来自分类Dev

蜂巢:两点之间的距离

来自分类Dev

在两点之间创建svg弧

来自分类Dev

计算两点之间的网格距离

来自分类Dev

寻找两点之间的中点

来自分类Dev

获取两点之间的坐标?

来自分类Dev

两点之间的Geokit LatLng中点

来自分类Dev

两点之间的重击历史

来自分类Dev

计算两点之间的SVG弧

来自分类Dev

MongoDB两点之间的打印距离

来自分类Dev

Java:确定两点之间的角度

来自分类Dev

CesiumJS-两点之间的距离

来自分类Dev

在两点之间创建弧线

来自分类Dev

在JavaScript中的两点之间画线?