python文本處理

日常操作中,少不了文本處理,如程序輸入數據準備,python憑藉其簡潔優雅的語法,在文本處理上比C++等編譯型語言開發效率高出一大截。

文件操作示例
#輸入文件
f = open(r'D:\Python27\pro\123.bak') 
#輸出文件
fw = open(r'D:\Python27\pro\123e.bak','w')
#按行讀出所有文本
lines = f.readlines()
num = -1
for line in lines:
    str = '@SES/%i/' %num
    line = line.replace('@SES/1/',str)
    num = num + 1
    #寫入文件
    fw.writelines(line)
#關閉文件句柄
f.close()
fw.close()
注意,寫入文件常用的有write()和writelines()的兩個函數,其區別在於
file.write(str):把字符串str寫到文件中
file.writelines(seq):把序列seq的內容全部寫到文件中
這兩個函數都只是寫數據,不會寫入換行符,如果需要換行,需手動在寫入的str尾部加上'\n':

換行符在各個操作系統中界定的不同,Windows換行符是‘\r\n',Unix/Linux的換行符爲'\n',Mac的換行符爲'\r';
在python中,對換行符進行了統一處理,定義爲'\n',以文本模式寫入時,如果是Windows系統,則python會自動將\n轉爲\r\n,Mac系統類似;
默認的讀寫文件,打開操作就是以文本模式打開:f = open(r'D:\Python27\pro\123.bak','w') 
如果以二進制模式打開,需指定參數b:f = open(r'D:\Python27\pro\123.bak','rb') 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章