Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将pprint模块的输出发送到日志文件_Python_Logging - Fatal编程技术网

Python 如何将pprint模块的输出发送到日志文件

Python 如何将pprint模块的输出发送到日志文件,python,logging,Python,Logging,我有以下代码: logFile=open('c:\\temp\\mylogfile'+'.txt', 'w') pprint.pprint(dataobject) 如何将dataobject的内容以漂亮的打印格式发送到日志文件 with open("yourlogfile.log", "w") as log_file: pprint.pprint(dataobject, log_file) 请参阅。请使用pprint.pformat,它返回一个

我有以下代码:

logFile=open('c:\\temp\\mylogfile'+'.txt', 'w')
pprint.pprint(dataobject)
如何将dataobject的内容以漂亮的打印格式发送到日志文件

with open("yourlogfile.log", "w") as log_file:
    pprint.pprint(dataobject, log_file)

请参阅。

请使用
pprint.pformat
,它返回一个格式化字符串,可以直接转储到文件中

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

用于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

您会发现pformat比直接到文件的pprint慢得多,特别是如果您使用像
varname=%s%pprint.pformat(varname)
pprint.pformat()这样的构造,它也可以与标准日志一起使用<代码>记录器.debug(pprint.pformat(varname))