python 信息同時(shí)輸出到控制臺(tái)與文件的實(shí)例講解
python編程中,往往需要將結(jié)果用print等輸出,如果希望輸出既可以顯示到IDE的屏幕上,也能存到文件中(如txt)中,該怎么辦呢?
方法1
可通過日志logging模塊輸出信息到文件或屏幕。但可能要設(shè)置log的level或輸出端,對(duì)于同時(shí)需要記錄debug error等信息的較為合適,官方教程推薦學(xué)習(xí)用更規(guī)范的logger來操作。
例如,可參考來自官網(wǎng)的這段代碼。
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__)) #當(dāng)然 也可以用f.write("info")的方式寫入文件
方法3
利用輸出重定向輸出兩次
同樣輸出程序path和文件名
import os import sys temp=sys.stdout # 記錄當(dāng)前輸出指向,默認(rèn)是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()) # 將記錄在文件中的結(jié)果輸出到屏幕
R的重定向
這里多嘴補(bǔ)充一下,在windows下的R語(yǔ)言中,有個(gè)sink(‘文件名.后綴名') 可以將輸出重定向到文件中,然后用sink()重返控制臺(tái) 很是方便
以上這篇python 信息同時(shí)輸出到控制臺(tái)與文件的實(shí)例講解就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- Python loguru日志庫(kù)之高效輸出控制臺(tái)日志和日志記錄
- 解決Python3 控制臺(tái)輸出InsecureRequestWarning問題
- python將控制臺(tái)輸出保存至文件的方法
- Python同時(shí)向控制臺(tái)和文件輸出日志logging的方法
- python通過colorama模塊在控制臺(tái)輸出彩色文字的方法
- python實(shí)現(xiàn)俄羅斯方塊
- python和pygame實(shí)現(xiàn)簡(jiǎn)單俄羅斯方塊游戲
- Python使用pygame模塊編寫俄羅斯方塊游戲的代碼實(shí)例
- 用Python編寫一個(gè)簡(jiǎn)單的俄羅斯方塊游戲的教程
- Python控制臺(tái)輸出俄羅斯方塊移動(dòng)和旋轉(zhuǎn)功能
相關(guān)文章
python對(duì)矩陣進(jìn)行轉(zhuǎn)置的2種處理方法
這篇文章主要介紹了python對(duì)矩陣進(jìn)行轉(zhuǎn)置的2種處理方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07詳解Python進(jìn)階之切片的誤區(qū)與高級(jí)用法
切片(slice)就是一種截取索引片段的技術(shù),借助切片技術(shù),我們可以十分靈活地處理序列類型的對(duì)象。這篇文章主要介紹了Python進(jìn)階之切片的誤區(qū)與高級(jí)用法,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2018-12-12使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng)
這篇文章主要介紹了使用Python實(shí)現(xiàn) 學(xué)生學(xué)籍管理系統(tǒng),代碼大致分為五個(gè)函數(shù)組成,具體內(nèi)容詳情本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2019-11-11python實(shí)現(xiàn)pdf轉(zhuǎn)換成word/txt純文本文件
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)pdf轉(zhuǎn)換成word和txt純文本文件,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-06-06python實(shí)現(xiàn)Flappy Bird源碼
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)Flappy Bird源碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12