您好,登錄后才能下訂單哦!
首先要利用python進行讀取整個文件,然后逐行讀取,最后寫入數據。具體實現步驟參考如下:
步驟一、讀取整個文件
先在當前目錄下創建一個TXT文件,例如文件名為'pi_digits.txt'的文本文件,里面的數據如下:
3.1415926535 8979323846 2643383279 with open('pi_digits.txt') as f: # 默認模式為‘r',只讀模式 contents = f.read() # 讀取文件全部內容 print contents # 輸出時在最后會多出一行(read()函數到達文件末會返回一個空字符,顯示出空字符就是一個空行) print '------------' print contents.rstrip() # rstrip()函數用于刪除字符串末的空白 3.1415926535 8979323846 2643383279 ------------ 3.1415926535 8979323846 2643383279
步驟二、逐行讀取
有兩種方式可以進行逐行讀取。
方法1:可以通過循環方式來實現逐行讀取數據。
with open('pi_digits.txt') as f: for line1 in f: print line1 # 每行末尾會有一個換行符 print '------------' for line2 in f: print line2.rstrip() # 此時文件已經讀完,line2指向文本末尾,因此不會有輸出 3.1415926535 8979323846 2643383279 ----------
進行文件讀取時,會一直標記記錄讀取的位置,數據讀到哪,標記就放到哪邊,繼續讀取數據時會從該位置繼續讀取,因此上面代碼中第二個循環中輸出為空。將上述代碼稍加修改如下:
with open('pi_digits.txt') as f: for line1 in f: print line1 print '------------' with open('pi_digits.txt') as f: # 需要重新打開文本進行讀取 for line2 in f: print line2.rstrip() # 刪除字符串末尾的空白 3.1415926535 8979323846 2643383279 ------------ 3.1415926535 8979323846 2643383279
方法2:比上述更簡單的方式,逐行讀取數據可以用readlines()函數,如下:
with open('pi_digits.txt') as f: lines = f.readlines() # 讀取文本中所有內容,并保存在一個列表中,列表中每一個元素對應一行數據 print lines # 每一行數據都包含了換行符 print '------------' for line in lines: print line.rstrip() print '------------' pi_str = '' # 初始化為空字符 for line in lines: pi_str += line.rstrip() #字符串連接 print pi_str ['3.1415926535\n', '8979323846\n', '2643383279\n'] ------------ 3.1415926535 8979323846 2643383279 ------------ 3.141592653589793238462643383279
步驟三、數據寫入文件
對于寫入數據幾種模式里,最常用的是w', ‘a', 分別表示擦除原有數據再寫入和將數據寫到原數據之后:
filename = 'write_data.txt' with open(filename,'w') as f: # 如果filename不存在會自動創建, 'w'表示寫數據,寫之前會清空文件中的原有數據! f.write("I am Meringue.\n") f.write("I am now studying in NJTECH.\n")
現在當前路徑下創建了一個'write_data.txt'的文本文件,然后向文件中寫入數據如下:
I am Meringue. I am now studying in NJTECH.
在該文件中繼續加入新數據:
with open(filename,'a') as f: # 'a'表示append,即在原來文件內容后繼續寫數據(不清楚原有數據) f.write("I major in Machine learning and Computer vision.\n")
最后輸出的文件內容:
I am Meringue. I am now studying in NJTECH. I major in Machine learning and Computer vision.
以上就是利用python將數據寫入文件方法啦,如需了解更多python實用知識,點擊進入PyThon學習網教學中心。
到此這篇關于python處理寫入數據代碼講解的文章就介紹到這了,更多相關python處理寫入數據教學教程內容請搜索億速云以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持億速云!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。