教你利用python如何讀取txt中的數(shù)據(jù)
前言
當(dāng)我們在用python時可能會遇到想要把txt文檔里的數(shù)據(jù)讀取出來然后進(jìn)行繪圖,那么我們要怎么才能夠?qū)xt里的數(shù)據(jù)讀取出來呢?
假設(shè)有txt文本如下:

想要把上述文本數(shù)據(jù)讀取出來,可以用以下方法:
方法一:運用open()函數(shù)
該方法使用最基本的open函數(shù)進(jìn)行讀取,此處將會把數(shù)據(jù)讀取到一個列表中,這個方法一般就是open打開文件、read讀取文件、close關(guān)閉文件3個步驟,主要代碼如下:
def openreadtxt(file_name):
data = []
file = open(file_name,'r') #打開文件
file_data = file.readlines() #讀取所有行
for row in file_data:
tmp_list = row.split(' ') #按‘,'切分每行的數(shù)據(jù)
#tmp_list[-1] = tmp_list[-1].replace('\n',',') #去掉換行符
data.append(tmp_list) #將每行數(shù)據(jù)插入data中
return data
if __name__=="__main__":
data = openreadtxt('test.txt')
print(data)結(jié)果如下圖,已經(jīng)成功打印出txt數(shù)據(jù),這里默認(rèn)讀取的都是字符串類型,需要的話,可以進(jìn)行類型轉(zhuǎn)換,int,float都行:

方法二:使用numpy包的loadtxt方法
使用numpy包的loadtxt方法(在處理實驗數(shù)據(jù)中經(jīng)常用到),numpy是python的一個科學(xué)庫,至于安裝教程參考python中的NumPy,使用loadtxt方法讀取txt文件主要代碼如下(這里要求的數(shù)據(jù)必須是數(shù)字,不能是字母等字符,不然會報錯,因為numpy本身是做計算的,所以讀取的數(shù)據(jù)已經(jīng)轉(zhuǎn)化為數(shù)值類型,非字符串,這種方法在處理實驗數(shù)據(jù)中經(jīng)常會用到,簡單快捷)︰
import numpy as np
def loadtxtmethod(filename):
data = np.loadtxt(filename,dtype=np.float32,delimiter=',')
return data
if __name__=="__main__":
data = loadtxtmethod('D:\paper reading\基于優(yōu)勝劣汰模型選擇的聯(lián)邦學(xué)習(xí)方案\BBOA_ACC.txt')
print(data)程序運行截圖如下,已經(jīng)成功打印出txt數(shù)據(jù),這里返回的是ndarray類型:

方法三:使用pandas的read_table方法進(jìn)行讀取
首先先安裝pandas依賴包:
工具:
anaconda+python環(huán)境
步驟一:打開anaconda,如下:

步驟二:進(jìn)入你要安裝的python環(huán)境(虛擬環(huán)境,默認(rèn)為base):
命令為: activate+虛擬環(huán)境名稱

步驟三:安裝pandas
命令為:pip install pandas

至此,pandas包安裝完成。此外其他python的依賴包也是依照上述方法進(jìn)行安裝
pandas是python的一個數(shù)據(jù)處理的包,功能很強(qiáng)大,提供了許多現(xiàn)成的讀取各種文件的方法,像csv文件的read_csv方法,excel文件的read_excel方法等,主要代碼如下(這里不必要是數(shù)值的數(shù)據(jù))︰
import pandas
def read_tablemethod(filename):
data = pandas.read_table(filename,header=None,delim_whitespace=True)
return data
if __name__=="__main__":
data = read_tablemethod('D:\paper reading\基于優(yōu)勝劣汰模型選擇的聯(lián)邦學(xué)習(xí)方案\BBOA_ACC.txt')
print(data)程序運行結(jié)果如下,已經(jīng)成功打印出數(shù)據(jù),這里返回的是DataFrame類型:

總結(jié)
到此這篇關(guān)于利用python如何讀取txt中數(shù)據(jù)的文章就介紹到這了,更多相關(guān)python讀取txt的數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pandas中對文本類型數(shù)據(jù)的處理小結(jié)
這篇文章主要介紹了pandas中對于文本類型數(shù)據(jù)的處理匯總,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-11-11
Python實現(xiàn)讀取.nc數(shù)據(jù)并提取指定時間與經(jīng)緯度維度對應(yīng)的變量數(shù)值
這篇文章主要為大家詳細(xì)介紹了如何使用Python語言的netCDF4庫實現(xiàn)讀取.nc格式的數(shù)據(jù)文件,并提取指定維(時間、經(jīng)度與緯度)下的變量數(shù)據(jù),需要的可以了解下2024-02-02
Python復(fù)制Excel帶有條件格式的單元格sheet實現(xiàn)步驟
這篇文章主要為大家介紹了Python復(fù)制Excel帶有條件格式的單元格sheet實現(xiàn)步驟,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-07-07

