如何将Python函数的运行输出结果写入到.txt格式的文本文件中?
该需求完全可以实现,以下是两种常用实现方案:
方案1:修改原有代码直接写入文件
可以在原有代码基础上调整,直接将输出内容写入txt文件,不需要额外操作命令行,示例代码如下:
def example(): return "hello, world!\n" times = int(input("how many 'hello worlds'? ")) # 以写入模式打开文件,encoding参数避免特殊字符乱码 with open("output.txt", "w", encoding="utf-8") as file: for _ in range(times): file.write(example())
如果你不想修改原有example函数的定义,也可以通过重定向标准输出实现,代码如下:
import sys def example(): print("hello, world!") times = int(input("how many 'hello worlds'? ")) with open("output.txt", "w", encoding="utf-8") as file: # 暂存原来的标准输出(控制台) old_stdout = sys.stdout # 将标准输出切换为文件 sys.stdout = file for _ in range(times): example() # 恢复标准输出为控制台,避免后续打印异常 sys.stdout = old_stdout
方案2:不修改代码,运行时重定向输出
如果不想调整原有代码,也可以直接通过系统命令行的输出重定向功能实现:
- Windows系统在cmd或PowerShell中执行:
python 你的脚本文件名.py > output.txt - macOS/Linux系统在终端中执行:
python3 你的脚本文件名.py > output.txt
执行命令后输入数值3,所有原本打印到控制台的内容就会自动写入同目录下的output.txt文件中。
两种方案执行完成后,打开生成的output.txt就能看到你需要的3行hello, world!内容。
内容的提问来源于stack exchange,提问作者delivrance
相关产品推荐
相关产品推荐

