我正在使用这个要点的树,现在我正在尝试弄清楚如何将漂亮打印到文件中。有小费吗?
问问题
35186 次
4 回答
77
您需要的是 Pretty Printpprint
模块:
from pprint import pprint
# Build the tree somehow
with open('output.txt', 'wt') as out:
pprint(myTree, stream=out)
于 2013-06-24T16:41:11.373 回答
8
另一个通用的替代方法是 Pretty Print 的pformat()
方法,它创建一个漂亮的字符串。然后,您可以将其发送到文件中。例如:
import pprint
data = dict(a=1, b=2)
output_s = pprint.pformat(data)
# ^^^^^^^^^^^^^^^
with open('output.txt', 'w') as file:
file.write(output_s)
于 2019-12-05T08:48:47.137 回答
0
如果我理解正确,您只需将文件提供给pprintstream
上的关键字:
from pprint import pprint
with open(outputfilename, 'w') as fout:
pprint(tree, stream=fout, **other_kwargs)
于 2013-06-24T16:41:19.430 回答
0
import pprint
outf = open("./file_out.txt", "w")
PP = pprint.PrettyPrinter(indent=4,stream=outf)
d = {'a':1, 'b':2}
PP.pprint(d)
outf.close()
如果没有 Python 3.9 中的这种语法,则无法在接受的答案中获取 stream=。因此有了新的答案。您也可以改进使用with
语法来改进这一点。
import pprint
d = {'a':1, 'b':2}
with open('./test2.txt', 'w+') as out:
PP = pprint.PrettyPrinter(indent=4,stream=out)
PP.pprint(d)
于 2021-05-16T20:22:51.750 回答