2017-07-18 51 views
-5

下面是從文件中的文本:你如何刪除重複的話,使用Python中的文本文件?

Amlodipine 5 MG/Hydrochlorothiazide 25 MG/Olmesartan medoxomil 40 MG Oral Tablet 
aliskiren 150 MG/valsartan 160 MG Oral Tablet 
aliskiren 300 MG/valsartan 320 MG Oral Tablet 
azilsartan medoxomil 40 MG Oral Tablet 
azilsartan medoxomil 80 MG Oral Tablet 
azilsartan medoxomil 40 MG/Chlorthalidone 12.5 MG Oral Tablet 
azilsartan medoxomil 40 MG/Chlorthalidone 25 MG Oral Tablet 

我想這樣的輸出:

Amlodipine 5 MG/Hydrochlorothiazide 25 MG/Olmesartan medoxomil 40 MG Oral Tablet 
aliskiren 150 MG/valsartan 160 MG 
300 MG/320 MG 
40 MG 
80 MG 
40 MG/Chlorthalidone 12.5 MG 
40 MG/25 MG 
+0

這是一個很好的問題,但你要求我們寫的代碼爲您和問題又來了甚至不清楚什麼你其實你剛纔告訴我們的輸入,則輸出 – Hamuel

+0

尋求幫助這裏之前,最好是展示你自己的努力並解釋他們爲什麼沒有工作。 – perigon

回答

3

試試這個:

from collections import OrderedDict 

text = '''Amlodipine 5 MG/Hydrochlorothiazide 25 MG/Olmesartan medoxomil 40 MG Oral Tablet aliskiren 150 MG/valsartan 160 MG Oral Tablet aliskiren 300 MG/valsartan 320 MG Oral Tablet azilsartan medoxomil 40 MG Oral Tablet azilsartan medoxomil 80 MG Oral Tablet azilsartan medoxomil 40 MG/Chlorthalidone 12.5 MG Oral Tablet azilsartan medoxomil 40 MG/Chlorthalidone 25 MG Oral Tablet''' 

delimiter = '/' 
result = delimiter.join(OrderedDict.fromkeys(text.split(delimiter))) 
print(result) 

str.split()分離文本分成單獨的條目。該OrderedDict.fromkeys()消除重複,同時保持原來的順序。所述str.join()重組的單獨條目到使用原始定界符一個字符串。

參見str.split()OrderedDict(),fromkeys()str.join()

相關問題