python-文件的打開方式及一般操作方法

打開方法

打開模式 執行操作
‘r’ 以只讀方式打開文件(默認)
‘w’ 寫入的方式打開,會覆蓋已存在的文件
‘x’ 如果文件已經存在,使用此模式打開將引發異常
‘a’ 以寫入模式打開,如果文件存在,則在末尾追加寫入
‘b’ 二進制模式
‘t’ 以文本模式打開(默認)
‘+’ 可讀寫模式(可添加到其他模式中使用)
‘U’ 通用換行符支持

文件對象方法

文件對象方法 執行操作
f.close() 關閉文件
f.read([size=-1]) 從文件讀取size個字符,當未給定size或給定負值的時候,讀取剩餘的所有字符,然後作爲字符串返回
f.readline([size=-1]) 從文件中讀取並返回一行(包括行結束符),如果有size有定義則返回size個字符
f.write(str) 將字符串str寫入文件
f.writelines(seq) 向文件寫入字符串序列seq,seq應該是一個返回字符串的可迭代對象
f.seek(offset, from) 移動光標,至from(0:文件首,1:當前,2:文件尾)offset:偏移(以字節計算)
f.tell() 返回光標當前位置
f.truncate([size=file.tell()]) 截取文件到size個字節,默認是截取到文件指針當前位置

舉例:

f = open(文件名路徑,打開方式,encoding ='utf-8')    #修改文件編碼方式爲utf-8.
f = open(add1, encoding='utf-8')

f.close() #關閉文件

等效於

with open(add1, encoding='utf-8') as f:  
	# 對文件執行操作
    for each in f:  # 遍歷文件每一行
        print('each')
#此處跳出了with,對文件的操作結束,文件自動關閉

但是用第二種更好,語法更加清晰.

第一種搞不好什麼時候就給你把文件自動關閉咯

查看

文件內容的查看是以光標位置進行的,所以有對於光標的指令

for each in f:
    print(each) #按行輸出,文本文件一次取一行

f.read(size == -1) #從文件讀取size個字符,無size貨或給定負值時讀取剩餘所有字符(像個書籤)

f.tell()      #返回當前(書籤)在文件中的位置(位置按字節計算)

f.readline([size = -1]) #從文件讀取一行,如果有參數size,則從文件讀取光標後size個字節

f.write(str) #將字符串寫入f文件

f.writelines(seq) #向文件寫入字符串序列seq   

#pickle模塊(集合可以將所有的類型轉換爲二進制永久存儲)進去啥樣出來還是啥樣很優雅

import pickle

my_list = [123,3.14,'小甲魚'['another list']]

# 寫入.dump()
pickle_file = open('my_list.pkl','wb')      # wb:二進制寫入

pickle.dump(my_list,pickle_file)        # 將my_list列表以二進制方式放入pickle_file文件

# 讀取.load()
pickle_file = open('my_list.pkl','rb')      # 二進制只讀打開

my_list2 = pickle.load(pickle_file)     # 將文件內容加載到列表
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章