python 信息同时输出到控制台与文件的实例讲解
2018-05-11 15:54
1021 查看
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 信息同时输出到控制台与文件
- Python同时向控制台和文件输出日志logging的方法
- Python同时向控制台和文件输出日志logging的方法 Python logging模块详解
- Python同时向控制台和文件输出日志logging的方法
- 【Python】同时向控制台和文件输出日志logging
- 转【Python】同时向控制台和文件输出日志logging
- Python+Selenium进行UI自动化测试项目中,常用的小技巧4:日志打印,longging模块(控制台和文件同时输出)
- p6spy2.x配置为slf4j-log4j输出日志同时到控制台和文件
- java将控制台信息输出到文件
- linux命令tee:将信息同时输出到屏幕和文件
- Python输出PowerPoint(ppt)文件中全部文字信息的方法
- python 通过logging写入日志到文件和控制台的实例
- STS将控制台输出信息保存为文件
- Eclipse中将输出信息显示到控制台同时存到指定日志中
- python 读取.csv文件数据到数组(矩阵)的实例讲解
- python输出日志到控制台和文件
- python版本、文件信息及时间获取函数实例
- python读取文件同时输出行号和内容
- python之从文件读取数据到list的实例讲解