4 HAZİRAN 2009, PERŞEMBE
Python: bir listeyi bir koşula göre bölünmüş?
En iyi yolu, ve performans açısından bakıldığında, birden fazla liste koşullu dayalı öğelerin bir listesini bölmek için hem de estetik olarak nedir? Eşdeğer:
good = [x for x in mylist if x in goodvals]
bad = [x for x in mylist if x not in goodvals]
daha zarif bir şekilde bunu yapmak için var mı?
Burada fiili kullanma durumu, daha iyi yapmaya çalışıyorum ne olduğunu açıklamak için: güncelleme:
# files looks like: [ ('file1.jpg', 33L, '.jpg'), ('file2.avi', 999L, '.avi'), ... ]
IMAGE_TYPES = ('.jpg','.jpeg','.gif','.bmp','.png')
images = [f for f in files if f[2].lower() in IMAGE_TYPES]
anims = [f for f in files if f[2].lower() not in IMAGE_TYPES]
CEVAP
27 AĞUSTOS 2012, PAZARTESİ
good, bad = [], []
for x in mylist:
(bad, good)[x in goodvals].append(x)
Bunu Paylaş:
Python iki listeyi birleştirme?...
Python Pandalar - Yeniden Sipariş sütu...
Çeşitli değerlere göre sözlükler liste...
İki ölçüte göre bir Python listesi sır...
Python virgül ve boşluk şerit ile bölü...