#python #nltk #wordnet #synset
#python #nltk #wordnet #набор синхронизации
Вопрос:
Преобразовать список строк в список объектов типа synset.
Я пытался разделить и добавить, но не смог ввести приведение к типу sysnet.
inp="[Synset<'history.n.02'>,Synset<'long.n.02'>]"
Я должен получить вывод в виде
[Synset<'history.n.02'>,Synset<'long.n.02'>]
таким образом, чтобы выводом должен быть список наборов синхронизации.
Для понимания наборов синхронизации
Ответ №1:
Вы можете использовать wn.synset()
inp="[Synset<'history.n.02'>,Synset<'long.n.02'>]"
inp=inp[1:-1]
for i in inp.split(','):
val= i[8:-2]
print wn.synset(val)
Ответ №2:
Как насчет
from nltk.corpus import wordnet as wn
words = ['dog','cat']
wn_words = [wn.synsets(word) for word in words]
Комментарии:
1. На самом деле, я хочу избегать этого вычисления в sysnet снова и снова. Так что это будет неуместно
2. @Dpseudo Coders Вычисление набора синхронизации выполняется один раз для каждого слова в
words
3. Да, но есть ли способ быстрее преобразовать строку в объект synset
4. если вы можете предложить способ преобразовать «Synset<‘history.n.02’>» в объект synset
5. Не уверен, что понимаю. Каков тип элементов в
inp
списке? Какой желаемый тип?