我试图在不使用内置函数的情况下查找列表中是否存在重复项。到目前为止,我有类似的东西,但它似乎没有工作。有人可以帮忙吗?指点一下?改进?我很感激。 (Python版本2.7.10)
def DupSearch(list):
counter=0
for i in range(len(list)):
if list[i]==list[0]:
for j in range(len(list)):
if list[j]!=list[j+i]:
print "No duplicated"
else:
counter=counter+1
if counter == len(list):
print "Duplicate found"
DupSearch([1,2,3,4,5,3])
答案 0 :(得分:1)
这样的东西?
def DupSearch(list):
for i in range(len(list)):
for j in range(i+1, len(list)):
if list[i]==list[j]:
print "Duplicate found"
return
print "No duplicated"
答案 1 :(得分:0)
您可以使用字典存储单个元素的频率,
lst=[1,3,5,7,6]
dic={}
for i in lst:
if i in dic.keys():
dic[i]+=1
else:
dic[i]=1
duplicate= False
for key,value in dic.iteritems():
if value>1:
duplicate = True
print "List has duplicate element"
break
if not duplicate:
print "No duplicate element"