日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

Python进阶【第七篇】文件处理

發布時間:2025/3/8 python 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python进阶【第七篇】文件处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、文件操作

在Python中,文件讀寫是最常見的操作。對文件的操作為:

#1. 打開文件,得到文件句柄并賦值給一個變量 f=open('a.txt','r',encoding='utf-8') #默認打開模式就為r#2. 通過句柄對文件進行操作,f就是文件的句柄 data=f.read()#3. 關閉文件 f.close()

操作系統打開該文件,并返回一個文件句柄給應用程序
應用程序將文件句柄賦值給變量f

二、文件的讀寫模式

文件的一般打開模式:

文件句柄 = open('文件路徑', '模式')

?需要注意的是,文件路徑處應該填文件的相對路徑,當程序所操作的文件對象與該程序在同一目錄文件下時,可以直接用文件名

要寫入特定編碼的文本文件,請給open()函數傳入encoding參數,將字符串自動轉換成指定編碼。

文件的處理模式可以是以下方式以及他們之間的組合:

CharacterMeaning
‘r'open for reading (default)
‘w'open for writing, truncating the file first
‘a'open for writing, appending to the end of the file if it exists
‘b'binary mode
‘t'text mode (default)
‘+'open a disk file for updating (reading and writing)
‘U'universal newline mode (for backwards compatibility; should not be used in new code)

?

?

?

?

?

?

?

?

?

#1. 打開文件的模式有(默認為文本模式): r ,只讀模式【默認模式,文件必須存在,不存在則拋出異常】 w,只寫模式【不可讀;不存在則創建;存在則清空內容】 a, 之追加寫模式【不可讀;不存在則創建;存在則只追加內容】#2. 對于非文本文件,我們只能使用b模式,"b"表示以字節的方式操作(而所有文件也都是以字節的形式存儲的,使用這種模式無需考慮文本文件的字符編碼、圖片文件的jgp格式、視頻文件的avi格式) rb wb ab 注:以b方式打開時,讀取到的內容是字節類型,寫入時也需要提供字節類型,不能指定編碼#3. 了解部分 "+" 表示可以同時讀寫某個文件 r+, 讀寫【可讀,可寫】 w+,寫讀【可讀,可寫】 a+, 寫讀【可讀,可寫】x, 只寫模式【不可讀;不存在則創建,存在則報錯】 x+ ,寫讀【可讀,可寫】 xb

?三、文件的操作方法

#掌握 f.read() #讀取所有內容,光標移動到文件末尾 f.readline() #讀取一行內容,光標移動到第二行首部 f.readlines() #讀取每一行內容,存放于列表中f.write('1111\n222\n') #針對文本模式的寫,需要自己寫換行符 f.write('1111\n222\n'.encode('utf-8')) #針對b模式的寫,需要自己寫換行符 f.writelines(['333\n','444\n']) #文件模式 f.writelines([bytes('333\n',encoding='utf-8'),'444\n'.encode('utf-8')]) #b模式#了解 f.readable() #文件是否可讀 f.writable() #文件是否可讀 f.closed #文件是否關閉 f.encoding #如果文件打開模式為b,則沒有該屬性 f.flush() #立刻將文件內容從內存刷到硬盤 f.name

?注意:文件沒有修改這一說,只能是新數據覆蓋原數據

四、文件中的光標移動

1.read(3):

  1. 文件打開方式為文本模式時,代表讀取3個字符

  2. 文件打開方式為b模式時,代表讀取3個字節

2.?除read()以外,其余的文件內光標移動都是以字節為單位如seek,tell,truncate

注意:

  1. seek有三種移動方式0,1,2,其中1和2必須在b模式下進行,但無論哪種模式,都是以bytes為單位移動的

  2. truncate是截斷文件,所以文件的打開方式必須可寫,但是不能用w或w+等方式打開,因為那樣直接清空文件了,所以truncate要在r+或a或a+等模式下測試效果

?

轉載于:https://www.cnblogs.com/bep-feijin/p/8713437.html

總結

以上是生活随笔為你收集整理的Python进阶【第七篇】文件处理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。