Замена слова на случайно выбранные синонимы в строке?

Я нашел следующий код в Python, который выполняет ту же работу, но заменяет только синоним, выбранный вручную.

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] будет принимать любой синоним с индексом 2

Я хочу заменить выбранное слово его случайно выбранным синонимом?


person Mudassir Awan    schedule 21.11.2018    source источник


Ответы (1)


Если я правильно понял ваш вопрос, вам нужно выбрать случайный элемент из списка. В Python это можно сделать так:

import random
random.choice (synonyms)

Как ответил здесь

person Stefan Rendevski    schedule 21.11.2018