最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中常見的文件操作合集(讀取、編碼和關(guān)閉)

 更新時間:2025年11月21日 08:53:26   作者:鈕祜祿.愛因斯晨  
這篇文章主要為大家詳細(xì)介紹了Python中常見的文件操作,包括讀取、編碼和關(guān)閉等功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

文件的編碼

一些文本文件是通過編碼技術(shù)將內(nèi)容翻譯成0和1存入

編碼技術(shù):翻譯的規(guī)則,記錄了如何將內(nèi)容翻譯成二進制,以及如何將二進制翻譯回可識別的內(nèi)容

計算機中有很多編碼類型:比如UTF-8,GBK,Big5

UTF-8是目前最常用的編碼

文件的讀取

文件操作:打開、關(guān)閉、讀取

open()打開函數(shù):打開一個存在的文件,或者創(chuàng)建一個新文件

open(name,mode,encoding)

name:是要打開的目標(biāo)文件名的字符串(可以包含文件所在的具體路徑)

mode:設(shè)置打開文件的模式(訪問模式):只讀、寫入、追加

encoding:編碼格式(推薦使用UTF-8)

f=open('python.txt','r',encoding='UTF-8')
#encoding的順序不是第三位,所以不能用位置參數(shù),用關(guān)鍵字參數(shù)直接指定

注意:這個f就是文件對象

f=open("F:/Desktop/test.txt","r",encoding="utf-8")
print(type(f))

mode常用的三種基礎(chǔ)訪問模式

模式描述
r以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認(rèn)模式
w打開一個文件只用于寫入。如果該文件已存在則打開文件,并從頭開始編輯,原有的內(nèi)容會被刪除。若文件不存在,創(chuàng)建新文件
a打開一個文件用于追加。如文件存在,新內(nèi)容會寫入到已有內(nèi)容以后。如果該文件不存在,創(chuàng)建新文件進行寫入。

讀操作的方法

read()方法:文件對象.read(num)

num表示要從文件中讀取的數(shù)據(jù)長度(單位是字節(jié)),如果沒有傳入num,那么就表示讀取文件中的所有數(shù)據(jù)

f=open("F:/Desktop/test.txt","r",encoding="utf-8")
print(type(f))
print(f.read(11))
print(f.read())

同時使用兩個read時,會從上面讀取后的結(jié)果繼續(xù)讀,不是從頭

readlines()方法

readlines可以按照行的方式把整個文件中的內(nèi)容進行一次性讀取,并且返回的是一個列表,其中每一行的數(shù)據(jù)為一個元素

f=open("F:/Desktop/test.txt","r",encoding="utf-8")
print(type(f))
#print(f.read(11))
#print(f.read())
print(f.readlines())

readline方法

一次讀取一行內(nèi)容

f=open("F:/Desktop/test.txt","r",encoding="utf-8")
print(type(f))
#print(f.read(11))
#print(f.read())
#print(f.readlines())
line1 = f.readline()
line2 = f.readline()
print(line1)
print(line2)

文件關(guān)閉

在操作文件時,打開的文件會占用系統(tǒng)資源,因此使用完畢后必須及時關(guān)閉,否則可能導(dǎo)致資源泄露,甚至出現(xiàn)文件被鎖定無法進行其他操作(如刪除、修改)的情況。

關(guān)閉文件可以通過文件對象的 close() 方法實現(xiàn):

# 打開文件
f = open("F:/Desktop/test.txt", "r", encoding="utf-8")
# 執(zhí)行讀取操作
content = f.read()
print(content)
# 關(guān)閉文件
f.close()

注意:如果忘記調(diào)用 close() 方法,文件可能會保持打開狀態(tài),尤其在程序運行時間較長或頻繁操作文件時,可能引發(fā)系統(tǒng)資源耗盡的問題。

寫操作(mode=‘w’)

當(dāng)需要向文件中寫入內(nèi)容時,可以使用 w 模式(寫入模式)打開文件。w 模式的特點如下:

  • 若文件已存在,原有內(nèi)容會被完全清空,新內(nèi)容從文件開頭開始寫入;
  • 若文件不存在,則自動創(chuàng)建一個新文件。

寫入內(nèi)容主要通過 write() 方法實現(xiàn),該方法接收字符串作為參數(shù),將內(nèi)容寫入文件:

# 以寫入模式打開文件
with open("F:/Desktop/test.txt", "w", encoding="utf-8") as f:
    # 寫入單行內(nèi)容
    f.write("這是通過 write 方法寫入的第一行內(nèi)容\n")
    # 寫入多行內(nèi)容(需手動添加換行符 \n)
    f.write("第二行內(nèi)容\n")
    f.write("第三行內(nèi)容")

運行上述代碼后,test.txt 文件中的內(nèi)容會被更新為:

這是通過 write 方法寫入的第一行內(nèi)容
第二行內(nèi)容
第三行內(nèi)容

提示:write() 方法不會自動添加換行符,若需要換行,需手動在字符串末尾添加 \n。

追加操作(mode=‘a’)

如果希望在已有文件的末尾添加新內(nèi)容,而不覆蓋原有內(nèi)容,可以使用 a 模式(追加模式)。a 模式的特點如下:

  • 若文件已存在,新內(nèi)容會被添加到文件末尾;
  • 若文件不存在,則自動創(chuàng)建新文件并寫入內(nèi)容。

追加內(nèi)容同樣使用 write() 方法:

# 以追加模式打開文件
with open("F:/Desktop/test.txt", "a", encoding="utf-8") as f:
    f.write("\n這是追加的第一行內(nèi)容")  # 從文件末尾開始寫入
    f.write("\n這是追加的第二行內(nèi)容")

假設(shè)之前 test.txt 已有內(nèi)容:

這是通過 write 方法寫入的第一行內(nèi)容
第二行內(nèi)容
第三行內(nèi)容

執(zhí)行追加操作后,文件內(nèi)容會變?yōu)椋?/p>

這是通過 write 方法寫入的第一行內(nèi)容
第二行內(nèi)容
第三行內(nèi)容
這是追加的第一行內(nèi)容
這是追加的第二行內(nèi)容

之前 test.txt 已有內(nèi)容:

這是通過 write 方法寫入的第一行內(nèi)容
第二行內(nèi)容
第三行內(nèi)容

執(zhí)行追加操作后,文件內(nèi)容會變?yōu)椋?/p>

這是通過 write 方法寫入的第一行內(nèi)容
第二行內(nèi)容
第三行內(nèi)容
這是追加的第一行內(nèi)容
這是追加的第二行內(nèi)容

注意:a 模式下,文件指針默認(rèn)位于文件末尾,因此寫入的內(nèi)容會直接追加到最后,不會影響原有內(nèi)容。

到此這篇關(guān)于Python中常見的文件操作合集(讀取、編碼和關(guān)閉)的文章就介紹到這了,更多相關(guān)Python文件操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python中使用matplotlib庫繪制各種圖

    Python中使用matplotlib庫繪制各種圖

    這篇文章主要介紹了Python中使用matplotlib庫繪制各種圖方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python類的綁定方法和非綁定方法實例解析

    Python類的綁定方法和非綁定方法實例解析

    這篇文章主要介紹了Python類的綁定方法和非綁定方法實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-03-03
  • 解決Python3.8運行tornado項目報NotImplementedError錯誤

    解決Python3.8運行tornado項目報NotImplementedError錯誤

    這篇文章主要介紹了Python3.8運行tornado項目報NotImplementedError錯誤,本文給大家分享解決方法,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-09-09
  • 詳解用python自制微信機器人,定時發(fā)送天氣預(yù)報

    詳解用python自制微信機器人,定時發(fā)送天氣預(yù)報

    這篇文章主要介紹了用python自制微信機器人,定時發(fā)送天氣預(yù)報,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • vscode 與pycharm 配置 autopep8自動格式化代碼

    vscode 與pycharm 配置 autopep8自動格式化代碼

    autopep8是一個可以將Python代碼自動排版為PEP8風(fēng)格第三方包,使用它可以輕松地排版出格式優(yōu)美整齊的代碼,這里就為大家分享一下具體的方法
    2023-09-09
  • python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼

    python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼

    今天小編就為大家分享一篇python繪制BA無標(biāo)度網(wǎng)絡(luò)示例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 用matplotlib畫等高線圖詳解

    用matplotlib畫等高線圖詳解

    這篇文章主要介紹了用matplotlib畫等高線圖詳解,具有一定借鑒價值,需要的朋友可以參考下。
    2017-12-12
  • Python序列循環(huán)移位的3種方法推薦

    Python序列循環(huán)移位的3種方法推薦

    下面小編就為大家分享一篇Python序列循環(huán)移位的3種方法推薦,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python處理中文標(biāo)點符號大集合

    Python處理中文標(biāo)點符號大集合

    中文文本中可能出現(xiàn)的標(biāo)點符號來源比較復(fù)雜,通過匹配等手段對他們處理的時候需要格外小心,防止遺漏,下面小編給大家?guī)砹薖ython處理中文標(biāo)點符號大集合,感興趣的朋友跟隨腳本之家小編一起看看吧
    2018-05-05
  • numpy.where() 用法詳解

    numpy.where() 用法詳解

    這篇文章主要介紹了numpy.where() 用法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05

最新評論

新昌县| 西平县| 将乐县| 嘉善县| 右玉县| 澳门| 西华县| 会昌县| 安塞县| 通化县| 辽宁省| 句容市| 南康市| 富平县| 高青县| 竹北市| 永川市| 英超| 沂源县| 甘谷县| 长春市| 衡阳市| 三原县| 门源| 诸暨市| 林西县| 新巴尔虎左旗| 开阳县| 南涧| 阿勒泰市| 航空| 雅安市| 冷水江市| 株洲市| 修武县| 广州市| 农安县| 出国| 广德县| 遂溪县| 仁化县|