Python 文本换行和填充


在 Python 中,textwrap 模块用于格式化和换行纯文本。有一些选项可以通过调整输入段落中的换行符来格式化文本。

要使用这些模块,我们需要在代码中导入textwrap 模块。

import textwrap

构造函数的 Textwrapper 实例属性如下所示:

序号 属性和描述
1

width

行的最大长度。默认值为 70

2

expand_tabs

如果此属性的值为真,则所有制表符都将替换为空格。默认值为 True。

3

tabsize

当 expand_tabs 属性为真时,它将帮助设置具有不同值的 tabsize。默认值为 8。

4

replace_whitespace

当值为 True 时,文本中的所有空格字符都将替换为单个空格,默认值为 True。

5

drop_whitespace

换行文本后,将删除开头和结尾的空格。默认值为 True。

6

initial_indent

它将给定的字符串添加到换行文本的第一行的开头。默认值为 ' '。

7

subsequent_indent

它将给定的字符串添加到换行文本的所有行的开头。默认值为 ' '。

8

placeholder

无论是否已截断,它都会在输出文件的末尾追加字符串。默认值为 […]。

9

max_lines

此值将确定换行后将有多少行。如果值为 None,则没有限制。默认值为 None。

10

break_long_words

它会将长单词拆分以适应给定的宽度。默认值为 True。

11

break_on_hyphens

它用于在复合词的连字符后换行。默认值为 True。

文本换行方法

Textwrap 模块中有一些方法。这些模块是:

模块 (textwrap.wrap(text, width = 70, **kwargs)) -

此方法换行输入段落。它使用行宽来换行内容。默认行宽为 70。它返回一个行列表。列表中存储所有换行行。

模块 (textwrap.fill(text, width = 70, **kwargs)) -

fill() 方法类似于 wrap 方法,但它不会生成列表。它生成一个字符串。在超过指定的宽度后,它会在后面添加换行符。

模块 (textwrap.shorten(text, width, **kwargs)) -

此方法缩短或截断字符串。截断后,文本的长度将与指定的宽度相同。它将在字符串末尾添加 […]。

示例代码

实时演示

import textwrap

python_desc = """Python is a general-purpose interpreted, interactive, object-oriented, 
                 and high-level programming language. It was created by Guido van Rossum 
                 during 1985- 1990. Like Perl, Python source code is also available under 
                 the GNU General Public License (GPL). This tutorial gives enough 
                 understanding on Python programming language."""

my_wrap = textwrap.TextWrapper(width = 40)
wrap_list = my_wrap.wrap(text=python_desc)

for line in wrap_list:
   print(line)
    
single_line = """Python is a general-purpose interpreted, interactive, object-oriented, 
                 and high-level programming language."""

print('\n\n' + my_wrap.fill(text = single_line))

short_text = textwrap.shorten(text = python_desc, width=150)
print('\n\n' + my_wrap.fill(text = short_text))

输出

Python is a general-purpose interpreted,
interactive, object-oriented,
and high-level programming language. It
was created by Guido van Rossum
during 1985- 1990. Like Perl, Python
source code is also available under
the GNU General Public License (GPL).
This tutorial gives enough
understanding on Python programming
language.

Python is a general-purpose interpreted,
interactive, object-oriented,
and high-level programming language.

Python is a general-purpose interpreted,
interactive, object-oriented, and high-
level programming language. It was
created by Guido van Rossum [...]

更新于: 30-Jul-2019

5K+ 次查看

开启你的 职业生涯

通过完成课程获得认证

开始学习
广告