ile bir listedeki yinelenen değerlerin dizinlerini listeleme Yinelenen öğelerin dizinlerini listeleyecek şekilde yinelenen öğeleri listeleyen bu tanımı değiştirmeye çalışıyorum. Ayrıca, bir kopyasının tümünün listelenmesini istiyorum. A = [1,2,3,2,1,5,6,5,5,5] = duplicate_indexes = [3,4,7Python
def list_duplicates(seq):
seen = set()
seen_add = seen.add
# adds all elements it doesn't know yet to seen and all other to seen_twice
seen_twice = set(x for x in seq if x in seen or seen_add(x))
# turn the set into a list (as requested)
return list(seen_twice)
a = [1,2,3,2,1,5,6,5,5,5]
list_duplicates(a) # yields [1, 2, 5]
Sen üyelik testini yapmak için '' 'seen''' için kümesini kullanıyor hızlı? – wwii
@wwii Evet. Diğer cevaplarla karşılaştırıldığında, en kısa ve en net şekilde belirtimi ifade etmek için – thefourtheye