Как маркировать строку в Python 3.5.2

#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. Да, это было ясно. Скопированный вами пример предназначался для интерактивного сеанса.