2016-12-06 114 views
-2

我正在Python中使用.split創建一個列表項。我的代碼將用戶的輸入分割成一個列表。我想知道如何停止打印句子中單詞重複項目的程序。目前我的代碼是這樣的:在Python中創建列表並刪除重複項

sentence = input("Enter a sentence").lower() 
sentencesplit = sentence.split() 
print(sentencesplit) 

當我輸入「運行運行阿甘跑」,則回覆:

['run', 'run', 'Forrest', 'run'] 

但我希望它只是返回運行和阿甘,我希望它只是名單同一個詞一次。有沒有人知道這樣做的方式?我需要保持順序,所以類似這個問題不能幫助我,所以不要將其標記爲重複,只要離開並繼續前進就可以了。

謝謝,艾薩克

+0

是的,這是一個重複。請實際閱讀該頁面。 – TigerhawkT3

+0

沒有它不是我想要的訂單 –

+0

是的。這個問題有二十四個答案,而第二個答案提供了一個解決方案來維持原來的順序。 – TigerhawkT3

回答

2

您可以使用set

list(set(sentencesplit)) 
+0

如果單詞的順序不重要.. – Elan

-1
mylist = [word for word in mylist if mylist.count(word) == 1] 
+0

缺少最後一個']'。 – wildwilhelm

+0

雖然這是一個有效的答案,但與替代方案 –

+0

相比效率非常低,所提出的替代方案不會忽略字詞順序 –