Как разделить текст в python по блокам?
text = ''''''
data = ((10, 5), (10, 6), (10, 7), (10, 8), (10, 9))
for first_number, second_number in data:
text += f'''{first_number} умножить на {second_number} равно {first_number * second_number}
'''
result = [text[i:i+40] for i in range(0, len(text), 40)] # ['10 умножить на 5 равно 50\n10 умножить на', ' 6 равно 60\n10 умножить на 7 равно 70\n10', ' умножить на 8 равно 80\n10 умножить на 9', ' равно 90\n']
print(result)
Данный код заполняет переменную text данными, а затем разделяет её каждые 40 символов. Как вы можете видеть, строка разделяется в средине предложения. Подскажите пожалуйста как сделать так, чтобы она разделялась на максимум 40 символов и по предложениям??