2017-12-03 134 views
1

我對python比較陌生。我想用一個不同的詞來替換出現兩次以上的單詞。單詞可以由多個單詞組成。我希望他們被XYZ取代。例如:python根據發生次數替換單詞

ABC is a tall person. ABC likes sports. Sports are good for health. ABC is a gold medalist in many sports. 

ABC和運動應該替換爲XYZ。像,上面的句子應該是:

XYZ is a tall person. XYZ likes XYZ. XYZ are good for health. XYZ is a gold medalist in many XYZ. 

我用字典,並能夠得到一個單詞的計數點。但是無法獲得替代權。我想要使​​用正則表達式/ for循環/數據結構(如列表/字典)來完成此操作。是否有基於計數的替代功能可以提前完成?

+4

請分享你的代碼,你一直在努力。 – aBiologist

+0

將您的代碼部分發布到「您無法獲得替換權限」的位置。這將幫助我們找出你錯在哪裏。 – GaneshTata

回答

2

已經有一本字典既然你,你要的是循環並檢查字出現兩次以上,運行與string.replace(),使用示例:

s = ABC is a tall person. ABC likes sports. Sports are good for health. ABC is a gold medalist in many sports. 

s.replace("ABC", "XYZ") 
1

可以使用STR的組合.split()和str.replace()方法,例如

b=a.split(' ',1) 
if(b.count(b[i])) > 1: 
     b.replace(b[i],'XYZ')