Rheinwerk Computing < openbook >

 
Inhaltsverzeichnis
1 Einleitung
2 Die Programmiersprache Python
Teil I Einstieg in Python
3 Erste Schritte im interaktiven Modus
4 Der Weg zum ersten Programm
5 Kontrollstrukturen
6 Dateien
7 Das Laufzeitmodell
8 Funktionen, Methoden und Attribute
9 Informationsquellen zu Python
Teil II Datentypen
10 Das Nichts – NoneType
11 Operatoren
12 Numerische Datentypen
13 Sequenzielle Datentypen
14 Zuordnungen
15 Mengen
16 Collections
17 Datum und Zeit
18 Aufzählungstypen – Enum
Teil III Fortgeschrittene Programmiertechniken
19 Funktionen
20 Modularisierung
21 Objektorientierung
22 Ausnahmebehandlung
23 Iteratoren
24 Kontextobjekte
25 Manipulation von Funktionen und Methoden
Teil IV Die Standardbibliothek
26 Mathematik
27 Kryptografie
28 Reguläre Ausdrücke
29 Schnittstelle zu Betriebssystem und Laufzeitumgebung
30 Kommandozeilenparameter
31 Dateisystem
32 Parallele Programmierung
33 Datenspeicherung
34 Netzwerkkommunikation
35 Debugging und Qualitätssicherung
36 Dokumentation
Teil V Weiterführende Themen
37 Anbindung an andere Programmiersprachen
38 Distribution von Python-Projekten
39 Grafische Benutzeroberflächen
40 Python als serverseitige Programmiersprache im WWW – ein Einstieg in Django
41 Wissenschaftliches Rechnen
42 Insiderwissen
43 Von Python 2 nach Python 3
A Anhang
Stichwortverzeichnis

Download:
- Beispielprogramme, ca. 464 KB

Jetzt Buch bestellen
Ihre Meinung?

Spacer
<< zurück
Python 3 von Johannes Ernesti, Peter Kaiser
Das umfassende Handbuch
Buch: Python 3

Python 3
Pfeil 35 Debugging und Qualitätssicherung
Pfeil 35.1 Der Debugger
Pfeil 35.2 Formatierte Bildschirmausgabe – pprint
Pfeil 35.3 Logdateien – logging
Pfeil 35.3.1 Das Meldungsformat anpassen
Pfeil 35.3.2 Logging Handler
Pfeil 35.4 Automatisiertes Testen
Pfeil 35.4.1 Testfälle in Docstrings – doctest
Pfeil 35.4.2 Unit Tests – unittest
Pfeil 35.5 Analyse des Laufzeitverhaltens
Pfeil 35.5.1 Laufzeitmessung – timeit
Pfeil 35.5.2 Profiling – cProfile
Pfeil 35.5.3 Tracing – trace
Pfeil 35.6 Optimierung
Pfeil 35.6.1 Die Optimize-Option
Pfeil 35.6.2 Mutabel vs. immutabel
Pfeil 35.6.3 Schleifen
Pfeil 35.6.4 Funktionsaufrufe
Pfeil 35.6.5 C
Pfeil 35.6.6 Lookups
Pfeil 35.6.7 Exceptions
Pfeil 35.6.8 Keyword Arguments
Pfeil 35.6.9 Alternative Interpreter: PyPy
 
Zum Seitenanfang

35.2    Formatierte Bildschirmausgabe – pprint Zur vorigen ÜberschriftZur nächsten Überschrift

In der Standardbibliothek existiert das Modul pprint (für pretty print), das für eine formatierte Repräsentation eines Python-Datentyps auf dem Bildschirm verwendet werden kann. Das Modul macht insbesondere die Ausgabe komplexer Datentypen, zum Beispiel langer Listen, besser lesbar und bietet sich somit an, in einer interaktiven Debug-Sitzung zur Ausgabe verschiedener Werte verwendet zu werden.

Bevor Beispiele ausgeführt werden können, muss das Modul eingebunden werden:

>>> import pprint

Das Modul pprint enthält im Wesentlichen eine gleichnamige Funktion, die zur Ausgabe einer Instanz aufgerufen werden kann.

pprint(object, [stream, indent, width, depth], {compact})

Die Funktion pprint gibt die Instanz object, formatiert auf dem Stream stream, aus. Wenn Sie den Parameter stream nicht übergeben, wird in den Standardausgabestrom sys.stdout geschrieben. Über die Parameter indent, width und depth lässt sich die Formatierung der Ausgabe steuern. Dabei kann für indent die Anzahl der Leerzeichen übergeben werden, die für eine Einrückung verwendet werden sollen. Der Parameter indent ist mit 1 vorbelegt.

Über den optionalen Parameter width kann die maximale Anzahl an Zeichen angegeben werden, die die Ausgabe breit sein darf. Dieser Parameter ist mit 80 Zeichen vorbelegt.

Im folgenden Beispiel wird sys.path, die Liste der Standardpfade, mithilfe von pprint formatiert ausgegeben:

>>> import sys
>>> pprint.pprint(sys.path)
['',
'C:\\Program Files\\Python36\\python36.zip',
'C:\\Program Files\\Python36\\DLLs',
'C:\\Program Files\\Python36\\lib',
'C:\\Program Files\\Python36',
'C:\\Program Files\\Python36\\lib\\site-packages']
>>>

Zum Vergleich geben wir sys.path noch einmal unformatiert mit print aus:

>>> print(sys.path)
['', 'C:\\Program Files\\Python36\\python36.zip', 'C:\\Program Files\\Python36\\DLLs', 'C:\\Program Files\\Python36\\lib', 'C:\\Program Files\\Python36', 'C:\\Program Files\\Python36\\lib\\site-packages']

Der Parameter depth ist eine ganze Zahl und bestimmt, bis zu welcher Tiefe Unterinstanzen, beispielsweise also verschachtelte Listen, ausgegeben werden sollen.

Über den Schlüsselwortparameter compact lässt sich steuern, wie kompakt umfangreiche Strukturen (z. B. lange Listen) dargestellt werden. Wird hier True übergeben, wird beispielsweise nicht jedes Element von sys.path in eine eigene Zeile geschrieben.

Sollten Sie die Ausgabe von pprint weiterverarbeiten wollen, verwenden Sie die Funktion pformat, die die formatierte Repräsentation in Form eines Strings zurückgibt:

>>> s = pprint.pformat(sys.path)
>>> print(s)
['',
'C:\\Program Files\\Python36\\python36.zip',
'C:\\Program Files\\Python36\\DLLs',
'C:\\Program Files\\Python36\\lib',
'C:\\Program Files\\Python36',
'C:\\Program Files\\Python36\\lib\\site-packages']

Die Funktion pformat hat die gleiche Schnittstelle wie pprint – mit dem Unterschied, dass der Parameter stream fehlt.

 


Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
 Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Python 3 Python 3
Jetzt Buch bestellen

 Buchempfehlungen
Zum Rheinwerk-Shop: Einstieg in Python
Einstieg in Python


Zum Rheinwerk-Shop: Python. Der Grundkurs
Python. Der Grundkurs


Zum Rheinwerk-Shop: Algorithmen mit Python
Algorithmen mit Python


Zum Rheinwerk-Shop: Objektorientierte Programmierung
Objektorientierte Programmierung


Zum Rheinwerk-Shop: Raspberry Pi. Das umfassende Handbuch
Raspberry Pi. Das umfassende Handbuch


Zum Rheinwerk-Shop: Roboter-Autos mit dem Raspberry Pi
Roboter-Autos mit dem Raspberry Pi


Zum Rheinwerk-Shop: Neuronale Netze programmieren mit Python
Neuronale Netze programmieren mit Python


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo

 
 


Copyright © Rheinwerk Verlag GmbH 2020
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.

 
[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern