#python #nltk
#python #nltk
Вопрос:
я пытаюсь прочитать файл в своей программе на Python и применить к нему токенизатор, чтобы разделить текст на набор предложений. Однако в моем выводе я получаю символ ‘/ n’, которого я хотел бы избежать в выводе, поскольку это может помешать моим дальнейшим процессам над предложениями. Я прочитал ввод с помощью команды read(). Также пробовал readline(). я все еще получаю символы новой строки на выходе. Любые предложения по предотвращению этого?
file_sent = open(path,'r')
all_sents = file_sent.read()
sent_all = print all_sents
tokenized_sents = sent_tokenize(sent_all)
Комментарии:
1. » n» — это текстовый символ для перевода строки.
2. Я знаю это, но я не хочу, чтобы это было на моем входе.
3. Этот код не должен выполняться. Строка
sent_all = print all_sents
вызывает ошибку «недопустимый синтаксис». Что вы делаете, чтобы заставить это работать?
Ответ №1:
Если вы хотите полностью удалить новые строки:
all_sents = file_sent.read().replace('n', '')
Если вы хотите заменить их пробелами:
all_sents = file_sent.read().replace('n', ' ')
Очевидно, вы могли бы заменить их чем-то другим, если бы захотели.
Комментарии:
1. это правда, спасибо! Но мне было интересно, есть ли какой-либо другой способ, которым мы могли бы сделать то же самое.
2. О каком именно другом способе вы думаете? Вы могли бы использовать его в какой-то другой момент обработки. Например, если вы разделите его на слова, вы можете использовать
.split()
which, который будет отлично работать с любыми пробелами, включая новые строки, и в этот момент они исчезнут.