问题描述
我正在寻找一种方法来获取我在此处打印的输出写入 .txt 文件
for y in list(permutations(sllist,3)):
print("".join(y))
控制台中的输出如下所示:
ccccaaaaaaaabbbbdddddddddd
ccccaaaaaaaabbbbeeeeeee
ccccaaaaaaaabbbbfff
ccccaaaaaaaabbbbgggggggggggg
ccccaaaaaaaabbbb2001
ccccaaaaaaaabbbb01
ccccaaaaaaaabbbb06
这正是我想在 .txt 文件中写入它的方式。彼此之间整齐排列。 提前致谢。
解决方法
使用上下文管理器打开文件,这样它会自动正确关闭,即使里面的代码引发异常。
正如评论中所指出的,不需要在内存中创建整个列表,您可以遍历 permutations
返回的对象,然后根据需要生成每个元素。
from itertools import permutations
sllist = "abcd"
with open("output.txt","w") as f:
for y in permutations(sllist,3):
line = "".join(y)
print(line)
f.write(f"{line}\n")
干杯!
,for y in list(permutations(sllist,3)):
print("".join(y))
for i in y:
f = open("some.txt","a")
f.write(i + '\n',)