SORU
8 AĞUSTOS 2011, PAZARTESİ


Pythonic döngü İÇİN birleştirmek ve EĞER bir şekilde ifade

Her iki döngüler ve if ifadeleri ayrı satırlarda olarak kullanmayı biliyorum

>>> a = [2,3,4,5,6,7,8,9,0]
... xyz = [0,12,4,6,242,7,9]
... for x in xyz:
...     if x in a:
...         print(x)
0,4,6,7,9

Ve bu ifadeler, basit olduğunda bu birleştirmek için anlama, böyle bir liste olarak kullanabilirim biliyorum:

print([x for x in xyz if x in a])

Ama ne bulamıyorum iyi bir örnek, herhangi bir yerde (kopyala ve Öğren) gösteren bir kompleks set komutları (sadece "print x") meydana gelen aşağıdaki birleşimi için bir döngü ve eğer bazı ifadeler. Beklediğiniz bir şey gibi görünüyor:

for x in xyz if x not in a:
    print(x...)

Bu sadece python çalışmak gerekiyordu değil mi?

CEVAP
8 AĞUSTOS 2011, PAZARTESİ


Bu gibi generator expressions kullanabilirsiniz:

gen = (x for x in xyz if x not in a)

for x in gen:
    print x

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • B4ROK

    B4ROK

    1 EKİM 2008
  • TeeMayneTV

    TeeMayneTV

    27 Kasım 2010
  • Top10Series

    Top10Series

    26 Kasım 2008