首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python:查找列表元素之间的差异

Python:查找列表元素之间的差异
EN

Stack Overflow用户
提问于 2010-03-08 19:16:11
回答 10查看 140.7K关注 0票数 140

给定一个数字列表,如何找到每个(i)-th元素和它的(i+1)-th之间的差异?

使用lambda表达式还是使用列表理解更好?

例如:

给定一个列表t=[1,3,6,...],目标是找到一个列表v=[2,3,...],因为3-1=26-3=3等。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2010-03-08 19:23:39

>>> t
[1, 3, 6]
>>> [j-i for i, j in zip(t[:-1], t[1:])]  # or use itertools.izip in py2k
[2, 3]
票数 179
EN

Stack Overflow用户

发布于 2010-03-08 22:26:04

其他答案是正确的,但是如果你在做数值工作,你可能想要考虑numpy。使用numpy,答案是:

v = numpy.diff(t)
票数 135
EN

Stack Overflow用户

发布于 2013-05-23 20:51:33

如果您不想使用numpyzip,可以使用以下解决方案:

>>> t = [1, 3, 6]
>>> v = [t[i+1]-t[i] for i in range(len(t)-1)]
>>> v
[2, 3]
票数 39
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2400840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档