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

  • bigky226

    bigky226

    11 HAZİRAN 2006
  • hydejiaqi

    hydejiaqi

    12 Mart 2008
  • LivestrongWoman

    LivestrongWo

    1 Aralık 2011