Python之文件處理


文件處理:文件操作分為讀、寫、修改讀:

f = open(file = 'D:/luffy/購物信息.txt ,mode = 'r' , encoding = 'utf-8') date = f.read() f.close

encoding = 'utf-8' 表示 按照uft-8 的規則去斷句,然后轉換成unicde存儲
mode = 'r' 表式只讀
f.read()表示讀取的所有內容(已轉換成字符串)
f.close ,表示關閉文件

 

文件處理的類型:
只要處理類型加上b(bytes),表示只這樣操作(一般不知道寫入編碼的時候用)
'r'(讀) :讀取出來的內容為字符串類型
'rb'(只讀):以二進制的方式讀取
’r+‘(可讀寫):以讀的方式打開,支持寫入
'w'(寫入) :創建新內容,覆蓋舊內容
'w+’(寫讀):以創建的模式打開,支持讀取
讀寫和寫讀指針都會停在最后(讀寫,不可讀取剛寫內容,寫讀:可以讀取剛寫的內容)


#按編碼寫入
f = open('測試2.txt','wb')
f.write('我是漢文'.encode('gbk'))
f.close()


‘a’ (追加,指針停在最后) ‘a+'(文件中有就不操作,沒有在末尾加上)
重要:注意存入內容編碼,以哪個編碼,以哪個編碼打開
加b讀出來是二進制,主要用於網絡傳輸文件,不能指定讀取編碼
chardet:自動檢測編碼類型 import chardet
a = chardet.detect(date)
print(a)
循環讀取:for i in f : print(i) (用完即刪,不占內存)


#循環打印
for i in f: print(i)
內置的函數操作:
def fileno() 返回文件句柄在內核中的索引值
def flush() 強制將寫入的buff緩存存到硬盤
def redable() 判斷文件是否可讀(linux系統中判斷特殊文件)
def readline()  每次讀取一行
def seek() 把操作文件的光標移動到指定位置(按字節算長度,字符編碼每個字符所占的字節長度不一樣)
#f.seek(3) #調整指針位置
def seekable() 判斷文件是否可seek操作
#f.seekable()
def tell() 返回當前文件操作的光標位置
f = open('測試2.txt','wb')
f.write('我是漢文'.encode('gbk'))
f.tell()
def truncate() 按指定長度截取文件 *按指定長度就從文件開頭開始截取長度,不指定的話,就按當前位置到文件尾部的內容全部去掉
def writable() 判斷文字是否可寫


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM