Использование регулярного выражения. Добавьте \ n после 5 совпадений "[не.], За которым следует.".
import re
text = 'The puppy is cute. Summer is great. Happy friday. sentence4. sentence5. sentence6. sentence7.'
print(re.sub(r'((?:[^.]+\.\s*){5})',r'\1\n',text))
Более продвинутое средство сопоставления предложений регулярных выражений, которое обрабатывает сокращения и другие знаки препинания путем сопоставления в конце знаков препинания. Ссылка: https://mikedombrowski.com/2017/04/regex-sentence-splitter/ Примечание: все еще есть крайние случаи, когда это не удается, например, TV, за которым следует Mr., нужны двойные пробелы для обозначения отдельного предложения. Цитаты с предложениями в них будут разбиты. et c.
import re
sentence_regex = r'((.*?([\.\?!][\'\"\u2018\u2019\u201c\u201d\)\]]*\s*(?<!\w\.\w.)(?<![A-Z][a-z][a-z]\.)(?<![A-Z][a-z]\.)(?<![A-Z]\.)\s+)){5})'
text = 'The puppy is cute. Watch T.V. Mr. Summers is great. Say "my name." My name is. Or not... Happy friday? Sentence4. Sentence5. Sentence6. Sentence7.'
text += " " + text
print(re.sub(sentence_regex,r'\1\n',text))
Что-нибудь более сложное, чем это, вы можете изучить в инструментарии обработки языка.