2011-09-13 21 views
6

Başka bir sözcük listesinden yeni bir liste oluşturmak istiyorum; kelimenin belirli bir koşulu karşılandığında. Bu durumda, 9 uzunluğa sahip olan tüm kelimeleri yeni bir listeye eklemek istiyorum.Python: Belirli bir koşul karşılandığında listeden yeni bir liste oluştur

ben kullandım:

resultReal = [y for y in resultVital if not len(y) < 4] 

Ancak 4. uzunluğu altında yer alan tüm girdileri kaldırmak için, şimdi girdileri kaldırmak istemiyoruz. Sözlerle yeni bir liste oluşturmak istiyorum, ancak onları eski listede tutuyorum. Böyle

Belki bir şey:

if len(word) == 9: 
    newlist.append() 

teşekkürler.

cevap

17

Maalesef, 9, boy 9 veya daha büyük olmayan uzunluk istediniz.

newlist = [word for word in words if len(word) == 9] 
+0

olmak için ']' yerine ')' sonunda. –

+0

Sözcük listesinde veya girişte toplamda dokuzdan fazla karakterden oluşan bir kelime olmayacağından,> 8 kullanımı mükemmel şekilde çalışacaktır. Çok teşekkür ederim! –

+0

@ mathias-ahonen - Yardım etmek için mutlu! Lütfen, sizin için uygun olanı bulduğunuzda yanıtları kabul edildi olarak işaretlemeyi unutmayın. Ayrıca, yazım hatası yakalamak için F.J'ye teşekkürler. :) –

1

Dene:

newlist = [] 
for item in resultVital: 
    if len(item) == 9: 
     newlist.append(item)
1

bu deneyin: muhtemelen gerekiyordu

newlist = [word for word in words if len(word) == 9] 
+0

Düzenleme ipuçlarını, düzenleme sayfasının sağ alt tarafında kontrol edin. Okumayı kolaylaştırmak için lütfen kodunuzu doğru biçimlendirin. –

İlgili konular