#python-3.x #nltk
#python-3.x #nltk
Вопрос:
Я хочу маркировать строку и использовал приведенные ниже коды:
print(raw)
tokens = nltk.word_tokenize(raw)
tokens
«raw» — это текст, извлеченный из HTML-файлов. Я напечатал ‘raw’, но последние две строки не сработали. У меня есть nltk 3.2.1 и Python 3.5.2. Я помню, что создатели nltk сказали, что nltk все еще находится в стадии обновления для Python 3.
Итак, есть ли какой-либо другой способ маркировать строку в среде Python 3.5.2? Делает ли BeautifulSoup или другие пакеты это?
Комментарии:
1. Когда вы говорите, что последние две строки «не сработали», не могли бы вы быть более конкретными? В частности, каким именно был ввод, какой результат вы ожидали и что вы на самом деле получили?
2. Если моим вводом является строка ‘Глава I, исключительно жарким вечером …’, то вывод последней строки должен быть примерно таким [‘Глава’, ‘Я’, ‘on’, ‘an’, ‘исключительно’, …] . Но теперь ничего не отображается,просто выглядит так, как будто код был пропущен.
3. Мы с Джоном Эриксоном не получили никакого сообщения об ошибке.
4. что произойдет
print(tokens)
, если вы5. @Julius какое хорошее решение! Это сработало. Спасибо!
Ответ №1:
Для последней строки code: token я следовал примеру из книги. После выполнения предложения Джулиуса и просто измените его на
print(tokens)
Это сработало. Итак, ntlk 3.2 действительно работает для python 3.5. это здорово.
Комментарии:
1. Обратите внимание, что это не имеет ничего общего с nltk. Ваша проблема заключалась в том, что при вводе имени переменной в интерактивном приглашении оно будет распечатано, но это не так при выполнении скрипта.
2. @alexis спасибо за разъяснение. Я запускал его как скрипт.
3. Да, это было ясно. Скопированный вами пример предназначался для интерактивного сеанса.