python 信息同时输出到控制台与文件的实例讲解


Posted in Python onMay 11, 2018

python编程中,往往需要将结果用print等输出,如果希望输出既可以显示到IDE的屏幕上,也能存到文件中(如txt)中,该怎么办呢?

方法1

可通过日志logging模块输出信息到文件或屏幕。但可能要设置log的level或输出端,对于同时需要记录debug error等信息的较为合适,官方教程推荐学习用更规范的logger来操作。

例如,可参考来自官网的这段代码。

import logging
logging.basicConfig(filename='log_examp.log',level=logging.DEBUG)
logging.debug('This message should go to the log file')
logging.info('So should this')
logging.warning('And this, too')

方法2

利用print输出两次

比如这里我想输出程序的path和程序的文件名

import os
# 第一句输出到consle:
print("filepath:",__file__,"\nfilename:",os.path.basename(__file__))
# 第二句输出到txt:
with open("outputlog.txt","a+") as f:
 print("filepath:",__file__,
 "\nfilename:",os.path.basename(__file__))
 #当然 也可以用f.write("info")的方式写入文件

方法3

利用输出重定向输出两次

同样输出程序path和文件名

import os
import sys
temp=sys.stdout # 记录当前输出指向,默认是consle
with open("outputlog.txt","a+") as f:
 sys.stdout=f # 输出指向txt文件
 print("filepath:",__file__,
 "\nfilename:",os.path.basename(__file__))
 print("some other information")
 print("some other")
 print("information")
 sys.stdout=temp # 输出重定向回consle
 print(f.readlines()) # 将记录在文件中的结果输出到屏幕

R的重定向

这里多嘴补充一下,在windows下的R语言中,有个sink(‘文件名.后缀名') 可以将输出重定向到文件中,然后用sink()重返控制台 很是方便

以上这篇python 信息同时输出到控制台与文件的实例讲解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现向QQ群成员自动发邮件的方法
Nov 19 Python
Python中threading模块join函数用法实例分析
Jun 04 Python
在Django的视图中使用form对象的方法
Jul 18 Python
Python的Scrapy爬虫框架简单学习笔记
Jan 20 Python
使用Python写CUDA程序的方法
Mar 27 Python
Python Socket使用实例
Dec 18 Python
Python实现的读取电脑硬件信息功能示例
May 30 Python
pandas Dataframe行列读取的实例
Jun 08 Python
pycharm远程linux开发和调试代码的方法
Jul 17 Python
Falsk 与 Django 过滤器的使用与区别详解
Jun 04 Python
Django框架 querySet功能解析
Sep 04 Python
Python requests模块session代码实例
Apr 14 Python
解决python nohup linux 后台运行输出的问题
May 11 #Python
解决nohup重定向python输出到文件不成功的问题
May 11 #Python
python抽取指定url页面的title方法
May 11 #Python
python清除字符串中间空格的实例讲解
May 11 #Python
Python3利用Dlib19.7实现摄像头人脸识别的方法
May 11 #Python
Python中的TCP socket写法示例
May 11 #Python
Python简单定义与使用二叉树示例
May 11 #Python
You might like
ThinkPHP3.1之D方法实例详解
2014/06/20 PHP
php 中奖概率算法实现代码
2017/01/25 PHP
利用jq让你的div居中的好方法分享
2013/11/21 Javascript
一看就懂:jsonp详解
2015/06/01 Javascript
javascript数据结构之二叉搜索树实现方法
2015/11/25 Javascript
JavaScript函数节流概念与用法实例详解
2016/06/20 Javascript
web 前端常用组件之Layer弹出层组件
2016/09/22 Javascript
AngularJS中指令的四种基本形式实例分析
2016/11/22 Javascript
原生js实现中奖信息无间隙滚动效果
2017/01/18 Javascript
JavaScript数据结构之二叉查找树的定义与表示方法
2017/04/12 Javascript
javascript实现日期三级联动下拉框选择菜单
2020/12/03 Javascript
Vue.Draggable实现拖拽效果
2020/07/29 Javascript
mui 打开新窗口的方式总结及注意事项
2017/08/20 Javascript
浅谈vue-cli加载不到dev-server.js的解决办法
2017/11/24 Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
2018/05/23 Javascript
layer设置maxWidth及maxHeight解决方案
2019/07/26 Javascript
关于vue里页面的缓存详解
2019/11/04 Javascript
[49:28]VP vs Optic 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
使用IronPython把Python脚本集成到.NET程序中的教程
2015/03/31 Python
详解python实现线程安全的单例模式
2018/03/05 Python
python3.x 将byte转成字符串的方法
2018/07/17 Python
关于Pycharm无法debug问题的总结
2019/01/19 Python
python日志logging模块使用方法分析
2019/05/23 Python
使用pycharm在本地开发并实时同步到服务器
2019/08/02 Python
python 对任意数据和曲线进行拟合并求出函数表达式的三种解决方案
2020/02/18 Python
什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?
2013/05/03 面试题
旅游管理毕业生自荐信范文
2014/03/19 职场文书
计算机专业毕业生自荐书
2014/06/02 职场文书
心理咨询专业自荐信
2014/07/07 职场文书
群众路线个人对照检查材料
2014/09/23 职场文书
商业门面租房协议书
2014/11/25 职场文书
自主招生推荐信格式模板
2015/03/24 职场文书
大学生团支书竞选稿
2015/11/21 职场文书
《玩出了名堂》教学反思
2016/02/17 职场文书
用Python的绘图库(matplotlib)绘制小波能量谱
2021/04/17 Python
MySQL系列之十 MySQL事务隔离实现并发控制
2021/07/02 MySQL