列表中连续元素之间的区别

列表中连续元素之间的区别,第1张

列表中连续元素之间的区别

您可以利用

enumerate
zip
列出理解:

>>> a = [0, 4, 10, 100]# basic enumerate without condition:>>> [x - a[i - 1] for i, x in enumerate(a)][1:][4, 6, 90]# enumerate with conditional inside the list comprehension:>>> [x - a[i - 1] for i, x in enumerate(a) if i > 0][4, 6, 90]# the zip version seems more concise and elegant:>>> [t - s for s, t in zip(a, a[1:])][4, 6, 90]

在性能方面,似乎并没有太大的差异

In [5]: %timeit [x - a[i - 1] for i, x in enumerate(a)][1:]1000000 loops, best of 3: 1.34 µs per loopIn [6]: %timeit [x - a[i - 1] for i, x in enumerate(a) if i > 0]1000000 loops, best of 3: 1.11 µs per loopIn [7]: %timeit [t - s for s, t in zip(a, a[1:])]1000000 loops, best of 3: 1.1 µs per loop


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5644623.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存