все Python 3textwrapфункция
textwrap.fill
перенос
Как wrap(), но возвращает единую строку с переносами \n (эквивалент '\n'.join(wrap(...))).
Синтаксис
textwrap.fill(text, width=70)
Главная ловушка — включённый по умолчанию replace_whitespace: переводы строк и табуляции внутри текста превращаются в пробелы, и многоабзацный текст склеивается в один сплошной кусок. Если абзацы нужно сохранить, разбей текст по пустым строкам и вызывай fill() для каждого абзаца отдельно. И учти: строки только переносятся, по правому краю ничего не выравнивается.
Примеры
import textwrap
print(textwrap.fill('a b c', width=10)) # → a b c
print(repr(textwrap.fill('one two three four', width=10))) # → 'one two\nthree four'
print(repr(textwrap.fill('one two three', width=12, initial_indent='* '))) # → '* one two\nthree'
print(textwrap.fill('a b c d', width=10) == '\n'.join(textwrap.wrap('a b c d', width=10))) # → True
print(repr(textwrap.fill('', width=10))) # → ''
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности