从列表中删除不在列表中其他数字的x个数字内的元素/数字

时间:2016-04-29 17:22:37

标签: python

mylist = [14,35,37,39,42]

我只需要将彼此相差3个数字的数字加在一起。换句话说,数字35,37,39和42,但不是14.是否有一种简单的方法来检查列表中的每个元素(数字),以查看在3个数字中是否至少有一个其他数字number(fyi,列表中的数字将始终按升序排列)...然后从列表中删除该数字,以便我可以这样做:

和(MYLIST)

1 个答案:

答案 0 :(得分:0)

是的,有:

i > 0

i < len(mylist) - 1v - mylist[i-1] <= 3使得索引永远不会超出范围,mylist[i+1]-v <= 3[1, 3, 5, 20, 23, 25, 27]检查下一个或上一个元素的差异是否更小大于或等于3。

这会添加至少有一个小于或等于3的伙伴的所有数字,如果要对它们进行分组并分别添加不同的组,则需要稍微更改一下列表。例如,如果您有original[i].split("\t")[0],则会将所有数字相加。