I’m looking for a way to format long text strings, by inserting new lines (or splitting) so that each part doesn’t exceed a fixed length. For example, this input:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc interdum mattis quam, id elementum tortor condimentum sit amet. Aliquam quam erat, suscipit ut dui ac, laoreet varius neque. Nulla commodo, arcu ut finibus tempor, leo lorem tempus tortor, et consectetur mi nisl sed ante.
would give, if limited to 80 chars, something like that:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc interdum mattis
quam, id elementum tortor condimentum sit amet. Aliquam quam erat, suscipit ut
dui ac, laoreet varius neque. Nulla commodo, arcu ut finibus tempor, leo lorem
tempus tortor, et consectetur mi nisl sed ante.
Is there anything in the standard library, or in a reasonable dependency, allowing to do something like that?
If not, I can code something, but I’d be surprised if no one had already solved this kind of issue…
Thank you ^^
>Solution :
You can use this module called textwrap3 whichI find very helpful when i use python.
from textwrap3 import wrap
text = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc interdum mattis quam, id elementum tortor condimentum sit amet. Aliquam quam erat, suscipit ut dui ac, laoreet varius neque. Nulla commodo, arcu ut finibus tempor, leo lorem tempus tortor, et consectetur mi nisl sed ante.'
sentence = wrap(text, 80)
for x in sentence:
print(x)
Outputs:
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc interdum mattis
quam, id elementum tortor condimentum sit amet. Aliquam quam erat, suscipit ut
dui ac, laoreet varius neque. Nulla commodo, arcu ut finibus tempor, leo lorem
tempus tortor, et consectetur mi nisl sed ante.