Рассмотрите возможность загрузки набора инструментов для естественного языка (NLTK
). Тогда вы можете создавать предложения, которые не будут ломаться для таких вещей, как "США". или не разбить предложения, заканчивающиеся на «?!».
>>> import nltk
>>> paragraph = u"Hi, this is my first sentence. And this is my second. Yet this is my third."
>>> sentences = nltk.sent_tokenize(paragraph)
[u"Hi, this is my first sentence.", u"And this is my second.", u"Yet this is my third."]
Ваш код становится намного более читабельным. Чтобы получить доступ ко второму предложению, вы используете обозначение, к которому вы привыкли.
>>> sentences[1]
u"And this is my second."