Python 如何搜索重复的数字列表,并将两个重复值中的第一个值按1删除?
我得到一个90-480的数字列表;此范围未完全填满。我的意思是,列表可能是90、91、92、94、95……等等,最多480个,而缺少的93个是预期的。每次我得到这份名单都有很多重复的。而且,我一次最多可以得到10个列表。我对列表的了解是,如果有重复项,100%的情况下,如果我将2个重复项中的第一个按1的值删除,然后继续扫描重复项,这将为我提供一个准确的列表。这个列表可能是这样的:“90,91,92,93,95,95,96,98,100,100,102,102…”所以为了让列表的这部分准确,我需要将前95改为94,前100改为99,前102改为101 对不起,如果我只是为了这个问题而在错误的地方提问;列表是excel格式的,但我可以使用Python或Linux,因为我也可以访问这两种语言。谢谢Python 如何搜索重复的数字列表,并将两个重复值中的第一个值按1删除?,python,excel,list,duplicates,Python,Excel,List,Duplicates,我得到一个90-480的数字列表;此范围未完全填满。我的意思是,列表可能是90、91、92、94、95……等等,最多480个,而缺少的93个是预期的。每次我得到这份名单都有很多重复的。而且,我一次最多可以得到10个列表。我对列表的了解是,如果有重复项,100%的情况下,如果我将2个重复项中的第一个按1的值删除,然后继续扫描重复项,这将为我提供一个准确的列表。这个列表可能是这样的:“90,91,92,93,95,95,96,98,100,100,102,102…”所以为了让列表的这部分准确,我需要
>>i=0
>>> i = 0
>>> a = [1,3,3,4,6,6]
>>> numbers = []
>>> while i < len(a):
... if a.count(a[i]) == 1: numbers.append(a[i]); i += 1
... else: numbers.append(a[i]-1); a.remove(a[i])
...
>>> numbers
[1, 2, 3, 4, 5, 6]
>>>a=[1,3,3,4,6,6]
>>>数字=[]
>>>而我>>数字
[1, 2, 3, 4, 5, 6]
这将为您提供所需的输出,我打赌有更好的方法,但目前我找不到它您可以根据配方尝试以下方法: 这将显示:
[90, 91, 92, 93, 94, 95, 96, 98, 99, 100, 101, 102]
你有没有试过的代码?你的问题到底是什么还不是很清楚…堆栈溢出是为了帮助而不是为了执行学校任务3。要求家庭作业帮助的问题必须包括到目前为止你为解决问题所做工作的总结,以及对你解决问题的困难的描述-没有密码。我认为这很清楚-取一个包含重复项的列表,在重复项中,将第一个重复项的值减1。这不是学校作业。此外,在过去我也曾问过类似的问题,并得到了回答。有零钱吗?谢谢这正是我想要的。非常感谢你!
[90, 91, 92, 93, 94, 95, 96, 98, 99, 100, 101, 102]