Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python根据出现次数替换单词_Python_String_Read Eval Print Loop - Fatal编程技术网

python根据出现次数替换单词

python根据出现次数替换单词,python,string,read-eval-print-loop,Python,String,Read Eval Print Loop,我对python比较陌生。我想用一个不同的词替换出现两次以上的词。单词可以由多个单词组成。我希望它们被XYZ替换。例如: ABC is a tall person. ABC likes sports. Sports are good for health. ABC is a gold medalist in many sports. ABC和sports应替换为XYZ。同样,上面的句子应该是: XYZ is a tall person. XYZ likes XYZ. XYZ are good

我对python比较陌生。我想用一个不同的词替换出现两次以上的词。单词可以由多个单词组成。我希望它们被XYZ替换。例如:

ABC is a tall person. ABC likes sports. Sports are good for health. ABC is a gold medalist in many sports. 
ABC和sports应替换为XYZ。同样,上面的句子应该是:

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

我使用了字典,能够计算出一个单词的出现次数。但是,我们无法正确地找到替代品。我想使用regex/for循环/数据结构(如列表/字典)来完成这项工作。是否有一个基于计数的替换函数可以提前完成此操作?

因为您已经有了一个字典,您需要的是循环并检查单词是否出现两次或两次以上,然后运行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")

例如,在检查str.split()和str.replace()方法时,可以组合使用它们

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

请分享你一直在做的工作的代码。将代码中“无法正确替换”的部分张贴出来。这将帮助我们找出你的错误所在。