首页 > 代码库 > Python3.2官方文档翻译--输出格式化

Python3.2官方文档翻译--输出格式化

第八章 标准库二

第二部分涵盖了许多更能满足专业开发人员需求的高级模块。这些模块在小脚本中很少出现。

8.1 输出格式化

Reprlib模块为大型的或深度嵌套的容器缩写显示提供了repr()函数的一个定制版本。

>>> import reprlib

>>> reprlib.repr(set(supercalifragilisticexpialidocious))

"set([acdefg, ...])"

Pprint模块提供了对输出内置函数和用户定义对象更加复杂的控制。这种方式是解释器能够读懂的。当结果多于一行时,“完美打印机”就会增加行中断和随进,一边更清晰的显示数据结构。

>>> import pprint

>>> t = [[[[blackcyan], white, [greenred]], [[magenta,

... yellow], blue]]]

...

>>> pprint.pprint(t, width=30)

[[[[blackcyan],

white,

[greenred]],

[[magentayellow],

blue]]]

 

Textwrap 模块格式化文本段落来适应所给屏幕的宽度。

>>> import textwrap

>>> doc = """The wrap() method is just like fill() except that it returns

... a list of strings instead of one big string with newlines to separate

... the wrapped lines."""

...

>>> print(textwrap.fill(doc, width=40))

The wrap() method is just like fill()

except that it returns a list of strings

instead of one big string with newlines

to separate the wrapped lines.

Local模块用来访问特殊数据格式的文化数据库。Local的分组格式化函数属性为数字的分组分隔格式化提供了直接的方法。

>>> import locale

>>> locale.setlocale(locale.LC_ALL, English_United States.1252)

English_United States.1252

>>> conv = locale.localeconv() # get a mapping of conventions

>>> x = 1234567.8

>>> locale.format("%d", x, grouping=True)

1,234,567

>>> locale.format_string("%s%.*f", (conv[currency_symbol],

... conv[frac_digits], x), grouping=True)

$1,234,567.80