如何在计算连续数字之间的差异后从列表中获取原始数字

how to get original numbers from a list after computing the difference between to consecutive numbers

{0: [41, 42, 183, 186, 471, 493, 639, 642, 732, 734], 1: [477, 489, 490]}

考虑一下我有一个以列表作为值的字典。

我想找出列表中两个连续数字之间的差异,如果它们的差异小于,比如 40,我想获取考虑到的这两个数字的第二个连续数字并存储所有此类列表中的数字。

谁能帮我解决这个问题。

解决此问题的一种方法:

data = {0: [41, 42, 183, 186, 471, 493, 639, 642, 732, 734], 1: [477, 489, 490]}
x = 40

{k: [b for a, b in zip(v, v[1:]) if a + x > b] for k, v in data.items()}
# {0: [42, 186, 493, 642, 734], 1: [489, 490]}

或者对于平面列表:

[b for v in data.values() for a, b in zip(v, v[1:]) if a + 40 > b]
# [42, 186, 493, 642, 734, 489, 490]