起因

写函数的时候把需要用的东西都print了。
结果后面要用的print的东西。
又不想再return。
索性像个办法把print捕获作为一个string。

经过

print的实质是调用了系统的标准输出,

print("hello")
sys.stdout.write('hello'+'\n')

上面两句话是等价的。
网上大都是有把输出重定向到文件,但是我只要输出作为string。先写入文件再读取就太不优雅了。
直接构造一个有write接口的类。

class redirect:content = ""def write(self,str):self.content += strdef flush(self):self.content = ""

然后

r = redirect()
sys.stdout = r

从此print的内容都被写入到r.content中了。
注意,是在重定向这句话执行之后,print的内容才会写入到r.content。

python捕获print标准输出相关推荐

  1. Part1_2 python注释,标准输出,if(else)语句,while语句

    注释 ##这是第一个python程序 print("hello,world") #这是单行注释''' 这里面是多行注释 第二行 第三行 ''' 标准输出语句 ''' print(& ...

  2. python流获取控制台_对Python捕获控制台输出流的方法详解

    有时候我们的代码里可能要调用控制台命令,比如我想用Python写一个批量编译 .java 文件的脚本,用到如下代码 常规用法 os.system import os,traceback try: p ...

  3. python中print的用法_Python中print函数简单使用总结

    Python中print函数简单使用总结 print函数是Python的入门,每一个学习python的人都绕不开这个函数,下面介绍一下这个函数的用法. 打开电脑,选择python软件,下面选择pyth ...

  4. python 捕获多个异常_Python捕获多个异常

    python 捕获多个异常 We can use a try-except block to catch exceptions and process them. Sometimes we call ...

  5. python语句print type 1234的输出结果是_Python语句 print(type(1J))的输出结果是

    [填空题]遍历输出文件所有行. f=open("d:\\r2.txt","r") while True: str= print(str,end='') if n ...

  6. python语句print type 1234的结果是_python语句print(type(123))的数据结果是( )。_学小易找答案...

    [单选题]python语句print(type(1//2))的数据结果是( ). [单选题]在Python程序中假设字典d={'1': 'male', '2': 'female'},如果语句中使用d[ ...

  7. Python中Print()函数的用法___实例详解(二)(全,例多)

    Python中Print()函数的用法___实例详解(二)(全,例多) 目录 十一.Print()小例子 十二.Print()中文输入显示乱码问题 十三.Print()写入文件 十四.print()在 ...

  8. python在print()中使用format的时候前面一定要有花括号{},否则值打印不上去

    python在print()中使用format的时候前面一定要有花括号{},否则值打印不上去 print("accuracy={}%".format(accuracy*100),& ...

  9. python输出print(x+y)_Python语句序列“x='car';y=2; print(x+y)”的输出结果是_学小易找答案...

    [单选题]下列标识符中,合法的是( ). [填空题]若 a=10 ,那么 bin(a) 的值为 __________ . [单选题]如果在 Python 程序中没有导人相关的模块 ( 例如 impor ...

最新文章

  1. 激光雷达lidar与点云数据
  2. 技术经理:求求你,别再乱改数据库连接池的大小了!
  3. iptables详解--转
  4. C++ :vector的使用
  5. 缓存nginx服务器的静态文件
  6. 谷歌加载web workers问题
  7. C++shortest common supersequence最短公共超序列算法的实现(附完整源码)
  8. vue2.0 watch的注意事项
  9. 【pyqt5学习】——graphicView显示matplotlib图像
  10. servlet中实现页面跳转return “r:”和return “f:
  11. mysql 多行 连续_mysql多表连续查询的问题
  12. 查oracle执行的sql,oracle查询正在执行的sql
  13. c++ string类型转换为char *类型
  14. Windows下 OpenSSL DES加密配置
  15. 【OpenCV学习】(三)色彩及矩阵操作
  16. python中tuple的意思_pythontuple什么意思
  17. 2021爱智先行者—记录一次 Spirit 1 和 IoT Pi 开发板的实战经历
  18. SSL peer shut down incorrectly
  19. Ubuntu16.04下Qt交叉编译开发环境搭建
  20. 浅谈C++类中的默认成员函数

热门文章

  1. Markdown如何定义公式编号,以及引用编号
  2. 研究发现,大多数长期 COVID 影响在感染后一年内消退
  3. mysql忽略大小写jpa解决_JPA 大小写敏感问题
  4. Spring Cloud启动慢Initializing ExecutorService 'taskScheduler'占用三分钟
  5. 永恒之蓝MS17010复现
  6. vscode配置git
  7. android App应用实现评分功能
  8. 本地localStorage.setItem
  9. 【Python的安装步骤及环境配置】
  10. 字符串查找indexOf()方法应用