Python如何讀取txt文件,獲取指定行中指定位置數(shù)據(jù)
更新時間:2024年03月26日 09:05:23 作者:pangpd
這篇文章主要介紹了Python如何讀取txt文件,獲取指定行中指定位置數(shù)據(jù),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
Python讀取txt文件,獲取指定行中指定位置數(shù)據(jù)
問題描述
需求:讀取大約有200多行的txt文件,獲取17-216行中每行中指定位置中的數(shù)值。
實現(xiàn):
#-*- coding: utf-8 -*- """ @Date: 2020/5/21 21:53 @Author: Pangpd @FileName: read_log.py @IDE: PyCharm @Description: 獲取日志中的訓練精度和損失 """ import linecache #獲取指定行內容 def get_line(file, nums_line): return linecache.getline(file, nums_line).strip() file = 'D:/UseTools/OneDrive/codes/My-Research/logs/05-01_10-09-40/05-01_10-09-40.txt' train_accuracy_list = [] train_loss_list = [] for line in range(17, 217): current_context = get_line(file, line).split() train_accuracy = float(current_context[9]) train_loss = float(current_context[6]) train_accuracy_list.append(train_accuracy) train_loss_list.append(train_loss)
python讀取txt文件并畫圖
方法1
已知txt文件內容如下:
0 0 1 1 2 4 3 9 4 16 5 25 6 36
請以第一列為x軸,第二列為y軸畫圖
步驟如下:
1)使用readlines讀取文件
2)建立兩個空列表X,Y,將第一列的數(shù)字放入X,第二列的數(shù)字放入Y中
3)以X,Y為軸畫圖
實現(xiàn)如下:
X, Y = [], [] for line in open('my_data.txt', 'r'): values = [float(s) for s in line.split()] X.append(values[0]) Y.append(values[1]) plt.plot(X, Y) #二維數(shù)據(jù)是折線圖,一維數(shù)據(jù)就是柱狀圖 plt.show()
方法2 使用numpy
import matplotlib.pyplot as plt import numpy as np data = np.loadtxt('test1.txt') plt.plot(data[:,0],data[:,1]) plt.show()
結果和上面的圖一樣
使用numpy是最方便的;當然剛開始的程序有點兒復雜,但對于理解python畫圖的實現(xiàn)過程是有幫助的。
另外,numpy.loadtxt還可以讀取.dat等文件。
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python整合ffmpeg實現(xiàn)視頻文件的批量轉換
這篇文章主要為大家詳細介紹了python整合ffmpeg實現(xiàn)視頻文件的批量轉換,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-05-05解決pygal.style的LightColorizedStyle參數(shù)問題
這篇文章主要介紹了解決pygal.style的LightColorizedStyle參數(shù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-07-07