Хорошо, посмотрим.Исправляя ваш код, чтобы посчитать '.'это легко сделать.Это будет выглядеть так:
with open('example_file.txt', 'rb') as f:
text = str(f.read())
num_sentences = str(text.count('.'))
print("Number of sentences found: {}".format(num_sentences))
Однако, как указал Джошуа, считая '.'недостаточно.Есть много случаев, когда точка может появляться как не граница предложения.Например, рассмотрим аббревиатуры или даже смайлики.Для подсчета предложений вам нужна библиотека обработки естественного языка, разработанная для этого или хотя бы более сложного подхода.
Подумайте о файле example_file.txt со следующим внутри:
Здравствуйте, это пример файла.Я рад, что вы нашли меня.Время сейчас 14:00. Надеюсь, у вас отличный день.
Ваш код ответит 5, но правильный ответ 4.
Следующий код показывает ошибку икак это можно сделать правильно, используя spacy .
with open('example_file.txt', 'rb') as f:
text = str(f.read())
num_sentences = str(text.count('.'))
print("Number of sentences found: {}".format(num_sentences))
import spacy
nlp = spacy.load('en')
doc = nlp(text)
print("Actual number of sentences: {}".format(len(list(doc.sents))))
Надеюсь, это поможет:)