python文件操作的簡單方法總結
更新時間:2019年11月07日 08:09:56 作者:flag_hw
在本篇文章里小編給大家整理的是關于python文件操作的簡單方法知識點,有需要的朋友們可以學習下。
文件操作1
#文件操作流程:1、打開文件,得到一個文件句柄;通過文件句柄操作文件;關閉文件。
#將文件打開文件賦給file1,test_file為文件名,utf-8為文件編碼;file1是文件的全量內容
data1 = open("test_file",encoding="utf-8").read()
print(data1)
#打開文件,獲取文件句柄file2,后續(xù)通過file2這個文件句柄對文件進行各種操作方法,默認文件以只讀模式打開,只讀時不能對文件進行寫操作
file2 = open("test_file","r",encoding="utf-8")
#一次將文件內容全部讀取
date2 = file2.read()
#"w"是以寫模式打開文件,此模式會先清空文件內容,此時不能對文件進行讀操作
file3 = open("test_file3","w",encoding="utf-8")
file3.write("file3 文件寫\n")
#"a"是文件追加寫模式,此時從文件末尾追加往后面寫
file4 = open("test_file","a",encoding="utf-8")
file4.write("file4 文件追加寫")
#逐行讀文件,readline()或直接對文件句柄進行迭代
file5 = open("test_file","r",encoding="utf-8")
for i in range(5):
print(file5.readline())
#下面將文件句柄直接進行迭代,文件句柄也是迭代器
for line in file5:
print(line)
文件操作2
#返回當前文件操作的位置信息,返回的是字符的數(shù)量
print(file5.tell())
#手工移動文件操作的當前位置,位置信息為seek的實參
file5.seek(10)
#輸出文件當前編碼,即打開時使用的編碼
print(file5.encoding)
#輸出文件名稱
print(file5.name)
#判斷文件是否可讀,返回布爾類型,與文件打開時指定的打開模式相關
print(file5.readable())
#判斷文件是否可寫,返回布爾類型,與文件打開時指定的打開模式相關
print(file5.writable())
#將文件寫的內容強制刷到硬盤
file5.flush()
#判斷文件是否關閉,返回布爾類型
print(file5.closed)
#默認清空文件內容,傳遞實參的話就是從文件開頭截斷多少字符,總是從文件開頭開始截斷,不論當前文件讀寫所處的位置
#file5.truncate()
#文件讀寫模式“r+”,讀是從文件開頭讀,寫是從文件末尾往后寫,操作文件位置指針是讀的位置,只能繼續(xù)往文件后面追加寫
#文件寫讀模式“w+”,先創(chuàng)建新文件然后寫,寫了以后可以讀。操作文件位置指針是讀的位置,只能繼續(xù)往文件后面追加寫
#以二進制讀取文件“rb”,打開文件時沒有encoding這個參數(shù)
file6 = open("binary_file","wb")
#二進制模式打開文件向寫入時需要將字符串轉換為二進制,否則寫報錯
file6.write("binary file".encode(encoding="utf-8"))
#文件的修改
#方法1將文件一次全部讀取在使用replace,將這個文件修改后的值返回,不修改原文件
data4 = open("test_file4",encoding="utf-8").read()
print(data4.replace("789","7788991010",2))
print(data4)
#方法2逐行讀取做判斷,寫入到一個新文件
file7 = open("test_file4","r",encoding="utf-8")
file8 = open("test_file4_new","w",encoding="utf-8")
for line in file7:
if "789" in line:
line = line.replace("789","7788991010")
file8.write(line)
file7.close()
file8.close()
知識點擴展:
print("->文件句柄的獲取,讀操作:")
f = open('無題','r',encoding='utf8')
d = f.read()
f.close()
print(d)
print('->例二:')
f = open('無題','r',encoding='utf8')
e = f.read(9)
f.close()
print(e)
#python3中,文件中一個中英文都占位1
運行結果:
復制代碼
->文件句柄的獲取,讀操作: 昨夜星辰昨夜風 畫樓西畔桂堂東 身無彩鳳雙飛翼 心有靈犀一點通 ->例二: 昨夜星辰昨夜風 畫
以上方法很簡單,感謝大家的學習和對腳本之家的支持。
相關文章
Python數(shù)據(jù)結構之棧、隊列及二叉樹定義與用法淺析
這篇文章主要介紹了Python數(shù)據(jù)結構之棧、隊列及二叉樹定義與用法,結合具體實例形式分析了Python數(shù)據(jù)結構中棧、隊列及二叉樹的定義與使用相關操作技巧,需要的朋友可以參考下2018-12-12
Keras:Unet網(wǎng)絡實現(xiàn)多類語義分割方式
本文主要利用U-Net網(wǎng)絡結構實現(xiàn)了多類的語義分割,并展示了部分測試效果,希望對你有用!2020-06-06
Python實戰(zhàn)之OpenCV實現(xiàn)貓臉檢測
今天給大家?guī)淼氖顷P于Python的相關知識,文章圍繞著OpenCV實現(xiàn)貓臉檢測展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下2021-06-06

