• 03-01-2023, 23:54:53
    #1
    Olay şu: 2 liste var, 1. listemize bir değer daha ekleniyor ortalarına bir yere ve yeni bir liste oluyor. Ben bu eklenen yeni değerli liste ile bir önceki listeyi karşılaştırdığımda yeni eklenen değeri almak istiyorum.
    Örnek:
    Liste1 = ["araba","kalem","top","oyuncak"]
    YeniListe1 = = ["araba","kalem","top","klavye","oyuncak"]

    ben yeni liste ve eski listeyi karşılaştırarak klavye eklendiğini nasıl anlayabilirim?
  • 03-01-2023, 23:58:16
    #2
    https://pydash.readthedocs.io/en/lat...ays.difference

    pydash çok temiz iş yapar bu noktada
  • 03-01-2023, 23:58:45
    #3
    En iyisi sanırım
    Listelerdeki eleman sayılarını kontrol edin daha sonra for döngüleriyle yeni listenin içinde turlayın ve diğer listede aynı eleman var mı kontrol edin
  • 03-01-2023, 23:59:00
    #4
    mertcangokgoz adlı üyeden alıntı: mesajı görüntüle
    https://pydash.readthedocs.io/en/lat...ays.difference

    pydash çok temiz iş yapar bu noktada
    Teşekkür ederim
  • 04-01-2023, 00:02:45
    #6
    set farkıyla alabilirsin

    Liste1 = ["araba","kalem","top","oyuncak"]
    YeniListe1 = ["araba","kalem","top","klavye","oyuncak"]

    yenigelenliste = list(set(YeniListe1)-set(Liste1))
    print(yenigelen)
  • 04-01-2023, 00:05:22
    #7
    satrancali adlı üyeden alıntı: mesajı görüntüle
    Olay şu: 2 liste var, 1. listemize bir değer daha ekleniyor ortalarına bir yere ve yeni bir liste oluyor. Ben bu eklenen yeni değerli liste ile bir önceki listeyi karşılaştırdığımda yeni eklenen değeri almak istiyorum.
    Örnek:
    Liste1 = ["araba","kalem","top","oyuncak"]
    YeniListe1 = = ["araba","kalem","top","klavye","oyuncak"]

    ben yeni liste ve eski listeyi karşılaştırarak klavye eklendiğini nasıl anlayabilirim?
    For döngüsüne sok karşılaştır eşit olmayanları yeni listeye append et hocam
  • 04-01-2023, 09:45:27
    #8
    For döngüleriyle işi olabildiğince karmaşıklaştırmaya gerek yok, bu işlem için kütüphane de gereksiz kaçabilir ve set(a) - set(b) işleminde de bazı görünmez hatalar meydana gelebilir. Örneğin a = ['1', '2'], b = ['1', '2', '3'] olsun. Bu durumda bize 3 vermesini beklerken boş çıktı verecektir çünkü a'dan b'yi çıkarıyor ve a'da hiç eleman kalmıyor. Bence en basit çözüm:
    a = ['1', '2']
    b = ['1', '2', '3']
    
    print(list(set(a) ^ set(b)))