2011-09-13 65 views
6

我想從另一個單詞列表中創建一個新列表;當某個詞的條件滿足時。在這種情況下,我想將所有長度爲9的單詞添加到新列表中。Python:在滿足某些條件時從列表中創建一個新列表

我用:

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

移除是4的長度下但是,所有的條目,我現在不想刪除的條目。我想用這些詞創建一個新列表,但將它們保留在舊列表中。

也許是這樣的:

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

感謝。

回答

17

對不起,意識到你想要的長度,9,而不是長度9或更大。

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

這大概應該是一個']'在最後,而不是一個')'。 –

+0

由於在單詞表或輸入中總共不會有超過九個字符的單詞,所以使用> 8將完美地工作。非常感謝你! –

+0

@ mathias-ahonen - 樂於助人!請記住在您找到適合您的答案時將答案標記爲已接受。另外,感謝F.J抓住我的錯字。 :) –

1

嘗試:

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

試試這個:

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

檢查編輯頁面底部右側的格式提示。請正確格式化您的代碼,以便於閱讀。 –

相關問題