python如何實(shí)現(xiàn)信息同時輸出到控制臺與文件-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“python如何實(shí)現(xiàn)信息同時輸出到控制臺與文件”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“python如何實(shí)現(xiàn)信息同時輸出到控制臺與文件”這篇文章吧。

10多年專注成都網(wǎng)站制作,成都定制網(wǎng)站,個人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設(shè)計流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),專注于成都定制網(wǎng)站,高端網(wǎng)頁制作,對成都混凝土攪拌機(jī)等多個領(lǐng)域,擁有多年的網(wǎng)站營銷經(jīng)驗。

python編程中,往往需要將結(jié)果用print等輸出,如果希望輸出既可以顯示到IDE的屏幕上,也能存到文件中(如txt)中,該怎么辦呢?

方法1

可通過日志logging模塊輸出信息到文件或屏幕。但可能要設(shè)置log的level或輸出端,對于同時需要記錄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語言中,有個sink(‘文件名.后綴名') 可以將輸出重定向到文件中,然后用sink()重返控制臺 很是方便

以上是“python如何實(shí)現(xiàn)信息同時輸出到控制臺與文件”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文標(biāo)題:python如何實(shí)現(xiàn)信息同時輸出到控制臺與文件-創(chuàng)新互聯(lián)
當(dāng)前鏈接:http://muchs.cn/article34/dgicse.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣、ChatGPT外貿(mào)網(wǎng)站建設(shè)、定制網(wǎng)站、標(biāo)簽優(yōu)化面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)