为了账号安全,请及时绑定邮箱和手机立即绑定

如何将打印输出重定向到TXT文件

如何将打印输出重定向到TXT文件

大话西游666 2019-11-29 14:59:40
我已经搜索过Google,Stack Overflow和我的Python用户指南,但找不到该问题的简单可行的答案。我在Windows 7 x64计算机上创建了文件c:\ goat.txt,并尝试将“测试”打印到该文件。我已经根据StackOverflow提供的示例尝试了以下方法:在这一点上,我不想使用日志模块,因为我从文档中不了解基于二进制条件创建简单的日志。打印很简单,但是如何重定向输出并不明显。我可以输入一个简单明了的例子对我的交易者最有帮助。此外,对于信息站点的任何建议也将受到赞赏(不提供pydocs)。import sysprint('test', file=open('C:\\goat.txt', 'w')) #failsprint(arg, file=open('fname', 'w')) # above based upon thisprint>>destination, argprint>> C:\\goat.txt, "test" # Fails based upon the above
查看完整描述

3 回答

?
元芳怎么了

TA贡献1798条经验 获得超7个赞

如果您使用的是Python 2.5或更早版本,请打开文件,然后在重定向中使用文件对象:


log = open("c:\\goat.txt", "w")

print >>log, "test"

如果您使用的是Python 2.6或2.7,则可以将print作为函数使用:


from __future__ import print_function

log = open("c:\\goat.txt", "w")

print("test", file = log)

如果您使用的是Python 3.0或更高版本,则可以省略将来的导入。


如果要全局重定向打印语句,可以设置sys.stdout:


import sys

sys.stdout = open("c:\\goat.txt", "w")

print ("test sys.stdout")


查看完整回答
反对 回复 2019-11-29
?
杨魅力

TA贡献1811条经验 获得超6个赞

要重定向所有打印的输出,可以执行以下操作:


import sys

with open('c:\\goat.txt', 'w') as f:

    sys.stdout = f

    print "test"


查看完整回答
反对 回复 2019-11-29
  • 3 回答
  • 0 关注
  • 876 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号