Python:如何将大文本输出格式化为"更漂亮"和用户定义

use*_*892 2 python formatting

Ahoy StackOverlow-ers!

我有一个相当微不足道的问题,但这是我在这里或在线教程中找不到的其他问题:我们如何能够格式化Python程序的输出,使其符合某种审美格式而不用任何额外的模块?

这里的目的是我有一个像报纸文章那样的纯文本块,我之前已经过滤了它以提取我想要的单词但现在我想以每行的格式打印出来沿着它只有70个字符,如果它通常应该在换行符上,任何单词都不会被破坏.

在stdout.write(article.ljust(70))中使用.ljust(70)似乎对它没有任何作用.

关于不打破单词的另一件事是:

Latest news tragic m

urder innocent victi

ms family quiet neig

hbourhood

Looking more like this:

Latest news tragic

murder innocent

victims family 

quiet neighbourhood
Run Code Online (Sandbox Code Playgroud)

提前谢谢大家!

Nic*_*ood 8

签出python textwrap模块(标准模块)

>>> import textwrap
>>> t="""Latest news tragic murder innocent victims family quiet neighbourhood"""
>>> print "\n".join(textwrap.wrap(t, width=20))
Latest news tragic
murder innocent
victims family quiet
neighbourhood
>>> 
Run Code Online (Sandbox Code Playgroud)