对python-3-print重定向输出的几种方法总结

yipeiwu_com5年前Python基础

方法1:

import sys 
 
f=open('test.txt','a+') 
a='123' 
b='456' 
print >> f,a,b 
f.close() 

方法2:

import sys 
 
f=open('a.txt','w') 
old=sys.stdout #将当前系统输出储存到临时变量 
sys.stdout=f #输出重定向到文件 
print 'Hello World!' #测试一个打印输出 
sys.stdout=old  #还原系统输出 
f.close() 
print open('a.txt','r') # 错误的方法,仅用于查看输出,了解python 
print open('a.txt','r').read() 
import sys 
year=1 
years=15 
bj=10000 
rate=0.05 
f=open('total.txt','w+') 
while year < years: 
   bj=bj*(1+rate) 
   print >> f,"第%d年,本息合计%0.2f" % (year,bj) 
   year+=1 

方法3:

自行编写一个类,这个类只要有write函数,以模拟file类型就可以将系统输出重定向到其上。

class FakeOut: 
 def __init__(self): 
  self.str='' 
  self.n=0 
 def write(self,s): 
  self.str+="Out:[%s] %s\n"%(self.n,s) 
  self.n+=1 
 def show(self): #显示函数,非必须 
  print self.str 
 def clear(self): #清空函数,非必须 
  self.str='' 
  self.n=0 
f=FakeOut() 
import sys 
old=sys.stdout 
sys.stdout=f 
print 'Hello weird.' 
print 'Hello weird too.' 
sys.stdout=old 
f.show() 
# 输出: 
# Out:[0] Hello weird. 
# Out:[1] 
 
# Out:[2] Hello weird too. 
# Out:[3] 

以上这篇对python-3-print重定向输出的几种方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Django组件content-type使用方法详解

Django组件content-type使用方法详解

前言 一个表和多个表进行关联,但具体随着业务的加深,表不断的增加,关联的数量不断的增加,怎么通过一开始通过表的设计后,不在后期在修改表,彻底的解决这个问题呢呢 django中的一个组件c...

详解Python读取yaml文件多层菜单

需要用到的Python知识点 Python的对象属性方法; 用到字典{key:value}值的提取; 列表的增加; if循环结合break的使用; yaml文件读取...

解决pycharm 误删掉项目文件的处理方法

解决pycharm 误删掉项目文件的处理方法

pycharm 文件丢了,怎么搞,不要慌, 鼠标右键点击想要恢复的项目,然后 local-history  show history  点击 revert ...

深入源码解析Python中的对象与类型

深入源码解析Python中的对象与类型

对象 对象, 在C语言是如何实现的? Python中对象分为两类: 定长(int等), 非定长(list/dict等) 所有对象都有一些相同的东西, 源码中定义为PyObject...

Python实现脚本锁功能(同时只能执行一个脚本)

Python实现脚本锁功能(同时只能执行一个脚本)

1. 文件锁 脚本启动前检查特定文件是否存在,不存在就启动并新建文件,脚本结束后删掉特定文件。 通过文件的判断来确定脚本是否正在执行。 方法实现也比较简单,这里以python脚本为例...