Python對(duì)文件操作知識(shí)匯總
打開(kāi)文件
操作文件
1打開(kāi)文件時(shí),需要指定文件路徑和打開(kāi)方式
打開(kāi)方式:
r:只讀
w:只寫(xiě)
a:追加
“+”表示可以同時(shí)讀寫(xiě)某個(gè)文件
r+:讀寫(xiě)
w+:寫(xiě)讀
a+:同a
U"表示在讀取時(shí),可以將 \r \n \r\n自動(dòng)轉(zhuǎn)換成 \n (與 r 或 r+ 模式同使用)
rU
r+U
"b"表示處理二進(jìn)制文件(如:FTP發(fā)送上傳ISO鏡像文件,linux可忽略,windows處理二進(jìn)制文件時(shí)需標(biāo)注)
rb
wb
ab
f = open('test.log','r+',encoding='utf-') f.write('saf中sdhgrbfds') print(f.tell()) #查看當(dāng)前指針位置,以字符為單位 f.seek() #指定當(dāng)前指針位置,以字節(jié)為單位 print(f.read()) f.truncate() #讀取指針之前的數(shù)據(jù) print(f.tell()) f.close()
二:常見(jiàn)的文件運(yùn)算
f = open('data', 'r') #以只讀形式打開(kāi)(默認(rèn)就是只讀)
f = open('f.txt', encoding='latin-1') #python3.0 Unicode文件
string = f.read() #把文件讀入一個(gè)字符串中
string = f.read(N) #讀取指針后的N個(gè)字節(jié)
string = f.readline() #讀取下一行,包括行末標(biāo)識(shí)符
alist = f.readlines() #讀取整個(gè)文件到字符串列表
f.write() #將字符串寫(xiě)入文件
f.writelines() #將列表內(nèi)所有字符串寫(xiě)入文件
f.close() #手動(dòng)關(guān)閉
f.flush() #把輸出緩沖區(qū)刷到硬盤(pán)中
f.seek(N) #將文件指針移到N處,以字節(jié)為單位
for line in open('data'):
print(line) #文件迭代器將文件一行行讀出
open('f.txt','r').read() #read all at ance into string
三:在文件中存儲(chǔ)并解析python對(duì)象
x,y,z = 41,42,43 s = 'spam' D = {'a':1, 'b':2} #字典對(duì)象 L = ['a','b','c'] #列表 f = open('f.txt','w') f.write(s + '\n') f.write('%s,%s,%s\n'%(x,y,z)) f.write(str(D)) f.write('\n') f.write(str(L)) f.close() print(open('f.txt').read()) #將文件內(nèi)容輸出 #從文件中取出數(shù)據(jù),并判斷其類型 ''' a = fi.readline() b = fi.readline() c = fi.readline() d = fi.readline() print(a,b,c,d,type(a),type(b),type(c),type(d)) ''' # 從文件中取出數(shù)據(jù),并轉(zhuǎn)換為存儲(chǔ)前的類型 fi = open('f.txt') a = fi.readline().rstrip() #rstrip()去掉換行符 print(a,type(a)) b = fi.readline().rstrip().split(',') #字符串的split()方法,在括號(hào)中寫(xiě)入分隔符,將字符串分割為列表。 print(b,type(b)) c = fi.readline() C = eval(c) #調(diào)用內(nèi)置函數(shù)eval(),將字符串轉(zhuǎn)化為可執(zhí)行的python代碼。 print(C,type(C),type(c)) d = fi.readline() D = eval(d) print(D,type(D),type(d))
以上所述是小編給大家介紹的Python對(duì)文件操作知識(shí)匯總的相關(guān)知識(shí),希望對(duì)大家有所幫助!
相關(guān)文章
使用python實(shí)現(xiàn)抓取中國(guó)銀行外匯牌價(jià)首頁(yè)數(shù)據(jù)實(shí)現(xiàn)
這篇文章主要為大家介紹了如何使用python實(shí)現(xiàn)抓取中國(guó)銀行外匯牌價(jià)首頁(yè)數(shù)據(jù)的實(shí)現(xiàn)示例,有需要的同學(xué)可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2021-10-10python實(shí)現(xiàn)通過(guò)shelve修改對(duì)象實(shí)例
這篇文章主要介紹了python實(shí)現(xiàn)通過(guò)shelve修改對(duì)象實(shí)例,是一個(gè)比較實(shí)用的技巧,需要的朋友可以參考下2014-09-09Django Admin中增加導(dǎo)出CSV功能過(guò)程解析
這篇文章主要介紹了Django Admin中增加導(dǎo)出CSV功能過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09如何使用 Pylint 來(lái)規(guī)范 Python 代碼風(fēng)格(來(lái)自IBM)
本文通過(guò)詳細(xì)的理論介紹和簡(jiǎn)單易懂的實(shí)例全面介紹了 Python 代碼分析工具 Pylint。相信讀者看完后一定可以輕松地將 Pylint 運(yùn)用到自己的開(kāi)發(fā)工程中2018-04-04