2010-10-07 2 views

Antwort

13

Bitte benutzen Sie pprint.pformat, die eine formatierte Zeichenfolge zurückgibt, die direkt abgeladen werden kann einzureichen.

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

Referenz:

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

+2

'pprint (Datenobjekts, fout)' funktioniert genauso gut. –

+1

Sie werden feststellen, dass pformat sehr viel langsamer als pprint ist, besonders wenn Sie ein Konstrukt wie 'varname =% s% pprint.format (varname)' verwenden – boatcoder

2

Für 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 
Verwandte Themen