Line Wrapping

TeroV teroV at nowhere.invalid
Mon Jun 18 14:28:21 EDT 2007


Evan Klitzke wrote:
> All,
> 
> Mail messages should be wrapped at 78 characters (as suggested in RFC
> 2822). I want my python batch scripts/cron jobs to enforce this
> behavior, and format the mail that is sent out so that newline
> characters are inserted as appropriate to keep line lengths at 78
> characters or less. I wrote a function to take a string and format it
> in this manner, but it seemed a bit awkward and un-Python like (my
> background is mostly C, and the function looks very much like C code).
> I'd imagine that there's probably a short, succinct, more elegant
> solution using regular expressions or some module that is unknown to
> me. Does anyone have any clean, short solutions to this problem?
> 

Does textwrap module has what you need?

 >>> import textwrap
 >>> 
textwrap.wrap('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa', 
78)
['aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa', 
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa']
 >>> textwrap.wrap('This is a very long String. A linewrap module has 
couple functions which might help you to accoplish your goal. HTH', 78)
['This is a very long String. A linewrap module has couple functions 
which might', 'help you to accoplish your goal. HTH']



More information about the Python-list mailing list