回覆列表
-
1 # 小小猿愛嘻嘻
-
2 # LIFE與Python
使用for in迴圈讀取檔案,然後直接用write方法寫入就OK了,這種方法是最簡單了,讀取一般的小檔案沒什麼問題,當讀取大檔案就會出現一下問題。
-
3 # 千鋒長沙
python讀取txt檔案三個方法告訴你:
方法一:
#read txt method one
f = open("./image/abc.txt")
line = f.readline()
while line:
print line
line = f.readline()
f.close()
方法二:
#read txt method two
f = open("./image/abc.txt")
for line2 in open("./image/abc.txt"):
print line2
方法三:
#read txt method three
f2 = open("./image/abc.txt","r")
lines = f2.readlines()
for line3 in lines:
print line3
1、如果TXT檔案中有兩列,可以設定陣列,然後分別獲取資料
2、上述檔案使用的是相對路徑,當然也可以使用絕對路徑
txt檔案是我們比較常見的一種檔案,讀取txt檔案其實很簡單,下面我介紹3種讀取txt檔案的方法,感興趣的可以瞭解一下,一種是最基本的方法,使用python自帶的open函式進行讀取,一種是結合numpy進行讀取,最後一種是利用pandas進行讀取,實驗環境win7+python3.6+pycharm5.0主要介紹如下:
為了更好的說明問題,我這裡新建一個test.txt檔案,主要有4行4列資料,每列之間使用空格分開,截圖如下,將這些資料讀取到程式中:
1.方法一:使用最基本的open函式進行讀取,這裡我將資料讀取到一個列表中,無非就是open開啟檔案、read讀取檔案、close關閉檔案3個步驟,主要程式碼如下:
程式執行截圖如下,已經成功打印出txt資料,這裡預設讀取的都是字串型別,需要的話,可以進行型別轉換,int,float都行:
2.方法二:使用numpy包的loadtxt方法(在處理實驗資料中經常用到),numpy是python的一個科學庫,至於安裝的話,我這裡不再贅述,網上的教程很多,使用loadtxt方法讀取txt檔案主要程式碼如下(這裡要求的資料必須是數字,不能是字母等字元,不然會報錯,因為numpy本身是做計算的,所以讀取的資料已經轉化為數值型別,非字串,這種方法在處理實驗資料中經常會用到,簡單快捷):
程式執行截圖如下,已經成功打印出txt資料,這裡返回的是ndarray型別:
3.方法三:使用pandas的read_table方法進行讀取,pandas是python的一個數據處理的包,功能很強大,提供了許多現成的讀取各種檔案的方法,像csv檔案的read_csv方法,excel檔案的read_excel方法等,主要程式碼如下(這裡不必要是數值的資料):
程式執行結果如下,已經成功打印出資料,這裡返回的是DataFrame型別:
至此3種方法都已介紹完畢,至於使用哪種方法,視具體環境而定,也因人而已,哪種方法使用起來順手就用哪種方法,不過後面兩種方法更簡單,快捷一些。這裡不足的是,我這裡假設資料是結構化的,如果是非結構化,雜亂無章的資料,那就使用open函式慢慢讀吧,後面兩種方法都不能直接使用,需將資料調整成一定格式的結構化資料才能使用,目前就介紹這3種方法,希望以上分享的內容能對你有所幫助吧。