web-dev-qa-db-fra.com

comment envoyer la sortie du module pprint vers un fichier journal

J'ai le code suivant:

logFile=open('c:\\temp\\mylogfile'+'.txt', 'w')
pprint.pprint(dataobject)

comment envoyer le contenu de dataobject dans le fichier journal au joli format d'impression?

48
AKM
pprint.pprint(dataobject, logFile)

Voir la documentation

75
livibetter

Veuillez utiliser pprint.pformat, qui renvoie une chaîne formatée qui peut être sauvegardée directement dans un fichier.

>>> import pprint
>>> with open("file_out.txt", "w") as fout:
...     fout.write(pprint.pformat(vars(pprint)))
... 

Référence:

http://docs.python.org/2/library/pprint.html

17
ddalex

Pour Python 2.7

logFile = open('c:\\temp\\mylogfile'+'.txt', 'w')
pp = pprint.PrettyPrinter(indent=4, stream=logFile)
pp.pprint(dataobject)   #you can reuse this pp.print
3
Kaiwen Sun