3.25.1 Oggetti PrettyPrinter

Le istanze di PrettyPrinter hanno i seguenti metodi:

pformat( object)
Restituisce la rappresentazione formattata di object. Questo inserisce nell'Account le opzioni passate al costruttore PrettyPrinter.

pprint( object)
Stampa la rappresentazione formattata di object sul flusso configurato, seguito da un carattere di fine riga.

I seguenti metodi forniscono le implementazioni per le funzioni corrispondenti degli stessi nomi. Utilizzare questi metodi su un'istanza è evidentemente più efficace, poichè non si ha necessità di creare nuovi oggetti PrettyPrinter.

isreadable( object)
Determina se la rappresentazione formattata dell'oggetto è ``readable'', oppure può venire utilizzato per ricostruirne il valore, utilizzando eval(). Osservate come questa restituisce sempre falso per gli oggetti ricorsivi. Se viene impostato il parametro depth di PrettyPrinter, e l'oggetto è più profondo di quanto consentito, restituisce falso.

isrecursive( object)
Determina se l'oggetto richiede una rappresentazione ricorsiva.

Questo metodo viene fornito come estensione per consentire alle classi derivate di modificare il modo in cui gli oggetti vengono convertiti in stringhe. L'implementazione predefinita utilizza le caratteristiche proprie della implementazione di saferepr().

format( object, context, maxlevels, level)
Restituisce tre valori: la versione formattata di object come stringa, un'opzione indicante se il risultato è leggibile, e un'opzione indicante se è stata rilevata una ricorsione. Il primo argomento è l'oggetto che deve essere rappresentato. Il secondo è un dizionario contenente l'id() degli oggetti che sono parte del contesto della corrente rappresentazione (contenitori di object diretti e indiretti che influenzano la presentazione), così come le chiavi; se risulta necessario dover rappresentare un oggetto a sua volta già rappresentato in context, il terzo valore restituito dovrebbe essere vero. Chiamate ricorsive al metodo format() dovrebbero aggiungere ulteriori voci per i contenitori, a questa directory. Il terzo argomento, maxlevels, stabilisce il limite richiesto per la ricorsione; questo valore sarà 0 se non viene richiesto alcun limite. Questo argomento dovrebbe essere passato alle chiamate ricorsive senza aver subito modifiche. Il quarto argomento, level, stabilisce il livello corrente; per le chiamate ricorsive dovrebbe venire passato un valore inferiore di quello della chiamata corrente. Nuovo nella versione 2.3.
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.