SORU
18 Kasım 2010, PERŞEMBE


Başka bir liste içinde gerçekleşen tüm öğeleri Kaldır

Hadi iki liste var, l1 l2. l2 l1 tüm öğeleri döndürür l1 - l2, gerçekleştirmek istiyorum.

Bunu yapmak için saf döngü bir yaklaşım düşünebilirsiniz, ama gerçekten verimsiz olacak. Bunu pythonic ve verimli yolu nedir?

Eğer varsa, örnek olarak, l1 = [1,2,6,8] and l2 = [2,3,5,8], l1 - l2 [1,6] dönmelidir

CEVAP
18 Kasım 2010, PERŞEMBE


Python mükemmel bir şey bu tür son derece kolay uyum sağlayan bir dil List Comprehensions denilen bir özelliği vardır. Aşağıdaki ifadeyi tam olarak ne istediğinizi yapar ve l3: sonuç olarak depolar

l3 = [x for x in l1 if x not in l2]

l3 [1, 6] içerir.

Bu yardımcı olur umarım!

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eddie Bravo

    Eddie Bravo

    17 EKİM 2006
  • MattSteffanina 2

    MattSteffani

    28 Kasım 2007
  • Numberphile

    Numberphile

    15 EYLÜL 2011