在Python中,有時我們需要將程序運行的結果保存到文件中 。這時很多人會想到將結果復制到txt文件中,但這樣做既麻煩又不利于后續(xù)數(shù)據(jù)處理,更為簡便和規(guī)范的方法是將運行結果直接寫入txt文件中 。本文從多個角度分析,介紹了Python如何將運行結果寫入txt文件 。

一、使用文件操作函數(shù)
Python提供了許多文件操作函數(shù),如open()、write()、read()等等,這些函數(shù)可以方便地對文件進行操作 。
其中,open()函數(shù)是打開一個文件,并返回文件對象,如果在此期間發(fā)生錯誤,則會觸發(fā)異常 。它的基本語法是:
with open('文件名.txt', '寫入模式', encoding='utf-8') as f:
f.write('要寫入的內容')
這里 ,
'文件名.txt'表示要寫入的txt文件名,
'寫入模式'表示文件的打開模式,Python提供了3種打開模式:
'w'表示寫入模式,當文件不存在時自動新建 , 當文件存在時清空原有內容,并以新內容取代它 。
'a'表示追加模式,當文件不存在時自動新建,當文件存在時在原有內容后添加新內容 。
'r'表示讀取模式 , 即讀取已經存在的文件內容 。
'encoding'表示文件的編碼方式,這里選擇的是utf-8編碼方式 。
f.write('要寫入的內容')是寫入文件的語句,它將要寫入的內容寫到文件中,write()方法返回的是寫入的字符數(shù) 。
二、使用pandas庫
在Python中,還有一種簡便的方法是使用pandas庫 。
pandas庫是Python中專門用于數(shù)據(jù)分析的庫,它的內置方法使得數(shù)據(jù)分析變得簡單明了 。這里我們可以借助pandas庫中的to_csv()方法,將運行結果寫入csv文件中 。
CSV文件是一種純文本格式的表格文件,可以使用Microsoft Office Excel、Google Spreadsheets、LibreOffice等軟件進行編輯和查看 。由于csv文件的格式與excel文件類似 , 只是沒有excel文件的復雜格式,所以pandas庫中的to_csv()方法適用范圍較廣 。
使用pandas庫的to_csv()方法 , 我們只需要兩步即可實現(xiàn)將運行結果寫入csv文件中:
from pandas import DataFrame
# 將結果存為csv文件
df = DataFrame(results)
df.to_csv('結果.csv', header=False, index=False, encoding='utf-8')
其中,results是一個列表,包含了程序運行的結果,DataFrame(results)將結果變成了一個數(shù)據(jù)表,to_csv()方法內的參數(shù)是csv文件的相關信息 。
第一個參數(shù)'結果.csv'表示生成的csv文件名,
第二個參數(shù)header=False表示不保存列名,
第三個參數(shù)index=False表示不保存數(shù)據(jù)表中的索引 ,
第四個參數(shù)encoding='utf-8'表示以utf-8編碼方式存儲文件,
這里除了文件名不同之外,pandas庫的to_csv()方法與使用文件操作函數(shù)的方法基本一致,使用pandas庫只是簡化了中間的步驟 。
三、使用numpy庫
在Python中,numpy庫也可以實現(xiàn)直接將運行結果寫入文件中 。
numpy庫是Python中的科學計算庫,它提供了數(shù)組、矩陣等高效的數(shù)值運算方法和數(shù)據(jù)結構 。numpy庫中的savetxt()方法就可以將程序運行結果保存為文本文件 。使用方法如下:
import numpy as np
# 將結果存為txt文件
np.savetxt('結果.txt', results)
其中,np.savetxt('結果.txt', results)即可將程序運行結果存儲到txt文件中,這里仍舊是將結果存儲到了一個列表中 。
四、總結
【python如何將運行結果寫入txt文件?】Python中實現(xiàn)將運行結果寫入txt文件有多種方法,本文從使用文件操作函數(shù)、使用pandas庫和使用numpy庫多個角度分析,并且分別給出了使用樣例 。使用文件操作函數(shù)是最基本的方法,可以適用于各種類型的文件 , 使用pandas庫可以更方便地保存數(shù)據(jù),而使用numpy庫則可以高效地進行數(shù)值運算和數(shù)據(jù)結構處理 。
猜你喜歡
- python設置指定目錄?
- mac如何運行python?
- python不同版本切換?
- python 文本編輯器?
- blender如何全部渲染?
- 如何完整卸載pycharm?
- 玫瑰花代碼python?
- python如何匹配換行符?
- python 3.5下xadmin的使用及修復源碼bug
- python 源碼中亂碼?
