Предпочтительный (но немного более сложный) способ сделать это - использовать поиск по регулярному выражению:
import re
expression = re.compile(r'([A-Z][^\.!?]*[\.!?])')
text = "This is a text. This is sentence 1. Here is sentence 2. And this is sentence 3."
# Find all occurences of `expression` in `text`
match = re.findall(expression, text)
print match
# ['This is a text.', 'This is sentence 1.', 'Here is sentence 2.', 'And this is sentence 3.']
Тривиальный (но более простой) способ сделать это - разделить его на ". "
итогда у вас есть список предложений в хронологическом порядке.Единственным недостатком этого является потеря пунктуации.
text = "This is a text. This is sentence 1. Here is sentence 2. And this is sentence 3."
splitt = text.split(". ")
print splitt
# splitt = ['This is a text', 'This is sentence 1', 'Here is sentence 2', 'And this is sentence 3.']