在Windows和Linux终端中,可以用>>>符号将程序输出重定向到文件中,那么在程序内部是否也可以执行相应操作呢?
Python使用三个IO文件流来管理标准输入、输出和错误输出,分别是sys.stdinsys.stdoutsys.stderr
所以,我们要做的仅仅是改变变量的值为目标文件流,就可以把输出重定向了。

import sys
file = open('C:\\test.txt','w')
sys.stdout = file
print('Hello world!')
file.close()

执行完这段代码,文件C:\test.txt就会被创建,内容为Hello world!
当然,如果想要将重定向还原,只需要保存原来的sys.stdout,最后将原来的值赋回去即可

import sys
file = open('C:\\test.txt','w')
oldstdout = sys.stdout
sys.stdout = file
print('Hello world!')
file.close()
sys.stdout = oldstdout
print('Hello world!')

这样你还能在控制台中看到Hello world!的输出

python 如何重定向输出相关推荐

  1. python输出可执行文件_重定向-禁止在Python调用中输出可执行文件

    重定向-禁止在Python调用中输出可执行文件 我有一个名为B的二进制文件,该文件在调用时会生成输出. 如果从Bash shell调用它,则大多数输出将受到A > /dev/null的抑制.所有 ...

  2. python输入输出重定向_Python标准输出重定向

    Python标准输出重定向 标签: Python stdout 重定向 声明 本文基于Python2.7版本,介绍常见的几种标准输出(stdout)重定向方式.显然,这些方式也适用于标准错误重定向. ...

  3. python文件输出-python将控制台输出保存至文件的方法

    很多时候在Linux系统下运行python程序时,控制台会输出一些有用的信息.为了方便保存这些信息,有时需要对这些信息进行保存.这里介绍几种将控制台输出保存到文件中的方式: 1 重定向标准输出流 重定 ...

  4. php标准输出重定向,python标准输出重定向方式

    一. 背景 在Python中,文件对象sys.stdin.sys.stdout和sys.stderr分别对应解释器的标准输入.标准输出和标准出错流.在程序启动时,这些对象的初值由sys.__stdin ...

  5. 【Linux】重定向(输入重定向 | 输出重定向)

    摘要 为了有效地让 Linux 程序协同工作,我们需要对命令输入输出进行重定向(Redirection),并将一个命令的输出通过管道(Pipes)连接到另一个程序的输入.本文将介绍如何在 Linux ...

  6. python语言格式化输出_Python format()格式化输出方法详解

    原标题:Python format()格式化输出方法详解 format() 方法的语法格式如下: str.format(args) 此方法中,str 用于指定字符串的显示样式:args 用于指定要进行 ...

  7. 用python中函数输出杨辉三角_用Python输出一个杨辉三角的例子

    这篇文章主要介绍了用Python和erlang输出一个杨辉三角的例子,同时还提供了一个erlang版杨辉三角,需要的朋友可以参考下 关于杨辉三角是什么东西,右转维基百科:杨辉三角 稍微看一下直观一点的 ...

  8. python输出文本-python;如何将输出写入文本文件

    用我的代码,我遍历文件并计算文件中的模式.我的代码如下python;如何将输出写入文本文件 from collections import defaultdict import csv, os, re ...

  9. python3中文手册-Python 输入和输出

    Python 输入和输出 在前面几个章节中,我们其实已经接触了 Python 的输入输出的功能.本章节我们将具体介绍 Python 的输入输出. 输出格式美化 Python两种输出值的方式: 表达式语 ...

最新文章

  1. 基于springboot2.x集成缓存注解及设置过期时间
  2. ubuntu 安装svn 版本12.04
  3. 13种重要的云原生工具,让交付过程更快
  4. muduo源代码分析--Reactor模式在muduo中的使用
  5. 解决Ubuntu18.04 No wifi adapter found
  6. 关于svn的安装配置开启服务过程和 eclipse安装SVN插件的方法
  7. Java的数据结构和算法
  8. 【敏捷开发每日一贴】测试驱动开发
  9. 软件配置管理计划示例
  10. win10如何共享计算机网络打印机,win10如何共享打印机给其它电脑,Win10设置打印机共享操作步骤...
  11. 不需要死记硬背,看一遍就能记住单词的意思,一起了解单词背后的有趣故事(6)
  12. python如何使用图片做背景_如何在python pptx中设置背景图像
  13. 如何安装浏览器插件,一篇文章全搞定
  14. 前端大文件下载(带进度条)
  15. Java生成二维码图片,手机软件扫码后跳转网页
  16. 网页制作HTML代码全攻略
  17. 面向WiFi密码破解的渗透测试研究
  18. VB--. 和 ! ?
  19. ApolloScape自动驾驶数据集
  20. 7-31 【0413】考拉兹猜想

热门文章

  1. 二、Git多人开发:不同人修改了不同文件如何处理
  2. opencv阈值化(五)
  3. 深度学习开发者的AI Party来了!WAVE SUMMIT+2021与你相约双十二
  4. 系统调研450篇文献,微软亚洲研究院推出超详尽语音合成综述
  5. 深度学习下的点击率预测:交互与建模
  6. 为AI学术小白铺平道路,NeurIPS 2019推出New In ML2019特别会议
  7. 叮!请查收本周份「知识图谱」专题论文解读
  8. 超全总结:神经网络加速之量化模型 | 附带代码
  9. 用Transformer完全代替CNN:AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE
  10. Mongodb知识总结