• 07-11-2017, 21:36:47
    #1
    iyi akşamlar R10.net ailesi
    6 tane liste var
    ve listenin içinde de listeler var benim yapmak istedğim şey bu 6 tane listenin içindeki ortak listeleri bir listeye atmak kullandığım teknik buydu ama kasma yapıyor:
  • 07-11-2017, 22:32:43
    #2
    bir de set() ile dene
    print set(a0) & set(a1) & set(a2) & set(a3) & set(a4) & set(a5)
  • 07-11-2017, 22:34:49
    #3
    b1 = [[1,2], [3,4,5], [0]]
    b2 = [[1,3], [3,4,7], [1,2]]
    b3 = [[3], [5,6], [1,2]]
    sonuc = []
    for e in b1:
      if e not in b2:
        continue
      elif e not in b3:
        continue
      else:
        sonuc.append(e)
    print(sonuc)
    Performansı nasıl olur bilemem. Daha basit yöntemler de vardır sanırım.
  • 07-11-2017, 22:49:54
    #4
    benoben adlı üyeden alıntı: mesajı görüntüle
    bir de set() ile dene
    print set(a0) & set(a1) & set(a2) & set(a3) & set(a4) & set(a5)
    liste olduğu için seti kabul etmiyor hocam



    zembla adlı üyeden alıntı: mesajı görüntüle
    b1 = [[1,2], [3,4,5], [0]] b2 = [[1,3], [3,4,7], [1,2]] b3 = [[3], [5,6], [1,2]] sonuc = [] for e in b1: if e not in b2: continue elif e not in b3: continue else: sonuc.append(e) print(sonuc)
    Performansı nasıl olur bilemem. Daha basit yöntemler de vardır sanırım.
    çok teşekkür ederim hocam işe yaradı
  • 07-11-2017, 22:59:36
    #5
    autorun1212 adlı üyeden alıntı: mesajı görüntüle
    liste olduğu için seti kabul etmiyor hocam




    çok teşekkür ederim hocam işe yaradı
    Rica ben de alternatif yazacaktım. Tek bir liste oluşturup farklı olanları kontrol etmeyi önerecektim. Ama bunun için her listenin içindeki listelerin farklı olması gerek. Büyük listelerde performans hangisinde iyi bilemiyorum
    toplam = b1 + b2 + b3
    sonuc = []
    cikanlar = []
    for e in toplam:
      if e not in cikanlar:
        cikanlar.append(e)
      elif e not in sonuc:
        sonuc.append(e)
    .
  • 08-11-2017, 00:40:52
    #6
    zembla adlı üyeden alıntı: mesajı görüntüle
    Rica ben de alternatif yazacaktım. Tek bir liste oluşturup farklı olanları kontrol etmeyi önerecektim. Ama bunun için her listenin içindeki listelerin farklı olması gerek. Büyük listelerde performans hangisinde iyi bilemiyorum
    toplam = b1 + b2 + b3 sonuc = [] cikanlar = [] for e in toplam: if e not in cikanlar: cikanlar.append(e) elif e not in sonuc: sonuc.append(e)
    .
    teşekkür ederim hocam 1000 satır liste var her listenin de içinde 10 tane int var o yüzden performans yönünden zorluk yaşanır diye düşünüyorum, destekleriniz için teşekkür ederim