我在文本文件中有一长串值
[(3.7811269080692846, 0, 1), (3.7811269080692846, 1, 0), (3.7698643400208622, 1, 2), (3.7698643400208622, 2, 1)]
我希望将每个括号以这种格式打印在单独的行上
[(3.7811269080692846, 0, 1),
(3.7811269080692846, 1, 0),
(3.7698643400208622, 1, 2),
(3.7698643400208622, 2, 1)]
这是我将其打印到文件的方式
f = open('contact.txt', 'w')
f.write(str(z))
f.close()
以我想要的格式打印文件的简单方法是什么?
答案 0 :(得分:0)
这是一种超级懒惰的解决方法:
obj = [(3.7811269080692846, 0, 1),
(3.7811269080692846, 1, 0),
(3.7698643400208622, 1, 2),
(3.7698643400208622, 2, 1)]
with open(r"C:\Temp\test.txt", 'w') as f:
f.write("[\r\n")
for tup in obj:
f.write(f"\t{tup!r},\r\n")
f.write("]\r\n")
这将使您的所有元组带有一个标签缩进,并确保所有内容都有自己的行。
答案 1 :(得分:0)
这是一种实现方式:
text = [(3.7811269080692846, 0, 1),
(3.7811269080692846, 1, 0),
(3.7698643400208622, 1, 2),
(3.7698643400208622, 2, 1)]
with open('contact.txt', 'w') as f:
for line in text:
f.write("{}\n".format(str(line)))
答案 2 :(得分:0)
您可以使用pprint(漂亮的打印件)。
从pprint导入pprint。
array = [某些值]
pprint(array)