Python中无法将循环输出写入txt文件,寻求解决方案
Python写入嵌套循环输出到文件的解决方案
你遇到的问题是没法把嵌套循环的控制台输出写入到文件里,下面给你两种可行的方法:
方法一:拼接内容后一次性写入
先把循环要输出的内容拼接成完整字符串,再写入文件。用with语句能自动管理文件的打开和关闭,避免手动操作出错:
with open('new.txt', 'w') as f: output_content = "" for i in range(1, 5): # 拼接每行的重复数字内容 for j in range(0, i): output_content += f"{i} " # 每行结束添加换行符 output_content += "\n" # 将完整内容写入文件 f.write(output_content)
方法二:直接用print的file参数定向输出
print函数自带file参数,可指定输出到文件对象,输出格式和控制台完全一致:
with open('new.txt', 'w') as f: for i in range(1, 5): for j in range(0, i): print(i, end=' ', file=f) # 单独打印换行符 print(file=f)
补充说明
你之前用open('new.txt','x')是创建新文件的模式,该模式下也能写入,但如果文件已存在会直接报错。上面两种方法用'w'模式会覆盖原有文件内容,若需要追加内容可将模式改成'a'。
内容的提问来源于stack exchange,提问作者pgmaster
相关产品推荐
相关产品推荐

