2015-05-18 11 views
5

Posso avere un output di dati piuttosto stampato come in pprint.pprint (nuove righe, rientro), ma anche elenchi abbreviati come in reprlib.repr allo stesso tempo?Combina reprlib e pprint in Python?

Un brutto trucco sembra essere pprint(eval(reprlib.repr(data))), ma c'è un modo migliore?

+0

perché non ritagliate la lista da soli? fai semplicemente riferimento a 'lista [0: max]' e lo accorcia (per chiarire: anche per liste di lunghezza inferiore alla massima). Puoi persino essere fantasioso e "aggiungere (...)" alla fine. – Scelesto

+0

@Scelesto '0' è l'inizio della sezione predefinito, quindi' list [: max] 'funziona anche. – jonrsharpe

+0

@ d33tah "repr è una funzione incorporata di Python che restituisce la rappresentazione di stringa canonica del suo input" La domanda non è su di esso. – vaultah

risposta

0

È possibile modificare il modo in cui un oggetto viene stampato sostituendo il metodo __repr__() nella relativa classe.

Python consente di ignorare lo repr di qualsiasi classe, quindi utilizzarlo con attenzione.