Lernen des Python-Moduls – Textumbruch und -füllung durch Textumbruch
Codebeispiel:
sample_text = '''
Das Textwrap-Modul kann zum Formatieren von Text für die Ausgabe in verwendet werden
Situationen, in denen hübsches Drucken erwünscht ist
Programmfunktionen ähnlich dem Absatzumbruch
oder Füllfunktionen, die in vielen Texteditoren zu finden sind.
' ''
Absatzfüllung:
import textwrap from textwrap_exampleimport sample_text print 'Nodedent:\n' printtextwrap.fill(sample_text, width=50)
Ausführungsergebnis:
# pythontextwrap_fill. py
No dedent:
Das Textwrap-Modul kann zum Formatieren von
Text für die Ausgabe in Situationen verwendet werden, in denen Pretty-
Drucken ist erwünscht.
Funktionalität ähnlich dem Absatzumbruch
oder Füllfunktionen, die in vielen Texteditoren zu finden sind.
Das Ergebnis ist linksbündig und Die erste Zeile ist mit Enter eingerückt. Leerzeichen in der Zeile bleiben erhalten.
Einrückung entfernen:
import textwrap fromtextwrap_example import sample_text dedented_text = textwrap.dedent(sample_text) print 'Dedented:' printdedented_text
Ausführungsergebnis:
# pythontextwrap_dedent .py
Dedented:
Das Textwrap-Modul kann zum Formatieren von Text für die Ausgabe in
Situationen verwendet werden, in denen ein hübsches Drucken gewünscht ist. Es bietet
programmgesteuerte Funktionen ähnlich dem Absatzumbruch
oder Füllfunktionen, die in vielen Texteditoren zu finden sind.
damit die erste Zeile nicht eingerückt wird.
Kombiniertes Entfernen von Einrückung und Polsterung:
import textwrap fromtextwrap_example import sample_text dedented_text =textwrap.dedent(sample_text).strip() for width in [ 45,70 ]: print '%d Columns:\n' % width print textwrap.fill(dedented_text,width=width) print
Ausführungsergebnis:
# pythontextwrap_fill_width.py
45 Spalten:
Das Textwrapmodul kann zum Formatieren von
Text für die Ausgabe in Situationen verwendet werden, in denen hübsche -
Drucken ist erwünscht. Es bietet programmatische
Funktionalität ähnlich den Absätzen
Umbruch- oder Füllfunktionen, die in vielen
Texteditoren zu finden sind.
70 Spalten:
Das Textwrap-Modul kann zum Formatieren von Text für die Ausgabe in
Situationen verwendet werden, in denen ein schöner Druck gewünscht ist . Es bietet programmatische
Funktionalität, die den Funktionen zum Umbrechen oder Füllen von Absätzen
in vielen Texteditoren ähnelt.
Hängender Einzug: Die erste Zeile hat einen kleineren Einzug als die anderen Zeilen . der Einrückung.
import textwrap fromtextwrap_example import sample_text dedented_text =textwrap.dedent(sample_text).strip() printtextwrap.fill(dedented_text, initial_indent='', subsequent_indent=' ' * 4, width=50, ) 执行结果: # pythontextwrap_hanging_indent.py The textwrapmodule can be used to format text for output in situations where pretty-printingis desired. It offers programmatic functionality similar to the paragraph wrapping orfilling features found in many text editors.
Das ''*4 kann auch durch andere Zeichen ersetzt werden.
TextWrap stellt die Funktionen wrap() und fill() sowie die TextWrapper-Klasse und die Tool-Funktion dedent() zur Verfügung. Normalerweise werden ein oder zwei Strings umbrochen oder gefüllt wrap() und fill(). In anderen Fällen ist es effizienter, TextWrapper zu verwenden.
textwrap.wrap(text[,width[, ...]])
Umbricht einen einzelnen Absatz (Text ist Eingabe, Systemzeichenfolge), Die maximale Breite jeder Linienbreite. Gibt eine Liste von Ausgabezeilen zurück, wobei die letzte Zeile kein Zeilenumbruchzeichen enthält. Die Breite beträgt standardmäßig 70.
textwrap.fill(text[,width[, ...]])
Umschließt einen einzelnen Textabsatz und gibt eine Zeichenfolge zurück, die den Umbruch enthält Absatz. Es ist eigentlich die Abkürzung von „n“.join(wrap(text,...)). wrap() und fill() erstellen TextWrapper-Instanzen und rufen eine Methode auf. Diese Instanzen werden nicht wiederverwendet. Um viele Textzeichenfolgen zu umbrechen/aufzufüllen, ist es daher effizienter, eigene TextWrapper-Objekte zu erstellen. TextWrapper.break_long_words legt fest, ob lange Wörter umgebrochen werden sollen.
textwrap.dedent(text)
Dedent entfernt den Leerraum am Anfang jeder Zeile. Dies erleichtert die Anzeige von Inhalten in dreifachen Anführungszeichen, ohne die Einrückung im Quellcode zu ändern.