Replacing a word by randomly selected synonyms in a string?
我在python中发现了以下代码,它们执行相同的工作,但只替换为手动选择的同义词。
1 2 3 4 5 6 7 8 9 10 11 12 | import nltk from nltk.corpus import wordnet synonyms = [] string="i love winter season" for syn in wordnet.synsets("love"): for l in syn.lemmas(): synonyms.append(l.name()) print(synonyms) rep=synonyms[2] st=string.replace("love",rep, 1) print(st) |
rep=synonyms[2] will be taking any synonym at index 2
号
我要用随机选择的同义词替换所选单词?
如果我正确理解您的问题,您需要从列表中选择一个随机元素。这可以在python中完成,如下所示:
1
2 import random
random.choice (synonyms)正如这里的回答