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

歡迎訪問 生活随笔!

生活随笔

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

python

Python文件操作IO open 读-取-写

發布時間:2025/4/5 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python文件操作IO open 读-取-写 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PythonIO文件操作,讀、取、寫

?

?

本篇內容 文件的操作。

?文件的練習

?文件的操作

讀取信息寫入信息、文件有那么多的字,在什么地方寫入、怎么 控制它。

文件對象 ===? 讀取 === 寫入

?

生成文件對象

Fileobject = open(filename,mode) py3 py2 通用

文件對象 = 打開(文件名稱,文件模式)

Fileobject = file(filename,mode)py2用的

?

文件對象 = 文件(文件名稱,文件模式)

對文件進行操作。

圖形界面打開文件過程,先找到文件 --雙擊打開。

程序打開文件工程,找到文件--確定是這個文件打開。

程序打開并不是一定能看見,通常是給程序員看或者用戶。

通過程序 給某一個文件建立起某一個聯系,在這 叫做生成文件對象。

可以理解為,你和文件建立起了聯系,你要讀取還是寫入信息,還沒確定。

文件進行操作之前第一步就是生成一個文件對象

兩個方法。一個open 一個file

? open方法

fileobject = open(filename,mode)? py2,py3 都可用

文件方法 = 打開(文件名,方法)

?file方法

fileobject = file(filename,mode) py

文件方法 = 文件(文件名,方法)

要養成一個習慣,用兩個都有的? 的open。這樣用2py也可以,3py也可以。減去后續不必要的麻煩。

?

示范 fileobject = open (filename,mode)

方法 =? 確定文件在什么地方,(在什么路徑,用讀取還是寫入方式打開。)

第一種情況進入我創建的文件夾選項,進入的的ipython。可直接打開文件

返回的提示表達:方式是 r 打開 編碼格式是CP936

此時獲得并不是文件的內容,只是一個文件獲得的一個句柄,或者理解為對象。

?

第二張情況 因為執行的文件環境是同一個目錄下,只需要執行文件的名字。

如果不是一個文件目錄,需要r文件 指定目錄 寫上完整路徑

?

讀取文件

注意: 進行讀取文件,可以后面方法寫上'r' ,也可以不加 ,因為程序默認的就是為'r'的參數

基本文件操作過程

Read 語法

選擇字節數的操作

read列子

講解含義

1 先生成一個對象。然后通過對象的方法。《某對象 = 方法》

2 選擇是對文件進行讀取信息,還是寫入信息。《f.read() = 對象 ,閱讀》,讀到信息

3 操作完畢后對象 文件關閉 ,主要是為了釋放內存。《對象.close()》

?

文件操作方法 和對象

可以組合使用,比如? r+ 就有讀取的作用、rb讀取一個二進制文件。

創建文件生成句柄

?

生成文件對象

創建文件句柄,生成文件對象的時候,是讀是寫還是追加去寫。

?

基本上功能如下圖,唯一的區別還是有一點的,先了解下怎么樣讀取和寫入,

然后在看它們的區別

?

?

介紹 readline

之前用的read,它是讀取全部的內容,

但是有的時候,內容有很多行,每一次只想讀取一行,這個時候就該用到readine,逐行讀取,也可以指定字節

Readline列子

每次執行的話會讀取一行。如果為空的話,會顯示? \n

?

每次執行readline命令內容就會讀取下一行,其實這個時候 指針就在起作用了,每次執行一次,指針調到下一行第一個字符。這就是readline過程

選擇一次讀多少字節,這里為一次5字節

沒有就顯示\n

?

freadlines列子

readlines

可以直接讀取多行,然后返回一個列表。

形成一個列表。每一個元素就是一行,直接通過列表方式 獲取第幾行數據。

?

小補充

這個案例是不讓你產生錯覺,用 read 讀取后 指針會一直往下掃描。一直讀取全部,。 當指針到最后,你還想往下讀的話,是讀不出來數據的。

????? 要想在看上面數據,可以用一個變量做一個賦值,保存起來。什么時候想看文件 信息,只要顯示 s變量值 就可以了。

最基礎的方法。其它方法也有,后面補充。

?

變量賦值案例

f 調用方法 保存到

變量c中。

以上介紹了IO文件在讀的時候,指針的作用

?

知道了怎么讀,

下面要看下怎么寫入數據

Write語法

Write例子

上圖解有、 w效果為寫入和重建。

表達含義:

1. w 寫入權限 寫入,此時新建一個為xq5txt文件。

2. write方法寫入,內容。一共為14個字節

3.可以明確看出此時創建的文件只有寫,沒有讀的權限

4.f變量用 r 讀的方式

5.用讀的權限 完美讀取 新建的xq5.txt里面的內容;???????

?

Writeines語法

Wwritelines例子:

表達含義:

1.用寫的方式,w打開文件

2.writlines 列表寫入法

3.釋放文件

4.讀取文件

5.讀取得到 寫入的數據;

列表數據變成一行的數據

?

?

文件 對象 組合使用

注意下 rw 不能 組合使用

所以w只可以寫入,如果想 有更新作用就用一個加號。

r w a三個 ?組合的時候,只能用到和a的 組合!

?

w +

可以組合使用,

但是 w 的效果是每次用時,就會重建數據,

1.用w 寫入 + 更新 功能 就會有寫入效果

2.之前這個文件里面為時間信息,可現在碰到w了,就會重新創建一個文件,是個新的文件,所以里面什么都沒有。

3.更新寫入內容? =.=

4.讀取數據,現在是讀不到數據的,因為更新寫入數據時也是指針控制。寫完一個指針移動一下,等你寫完之后指針就到了結尾處 ,所以讀取數據時,是讀不到前面的。

除非把指針移動到開口去。

?

a

含義 寫入,在文件末尾追加新的內容,文件不存在,創建之

下面看下? a的效果跟 w 做一下對比。

表達含義:

1.用a的方法 操作打開文件

2.進行寫入的操作,a是可以寫入的。

3.查看文件是沒有權限的

4.釋放文件控制

5。用讀的方式查看了 a寫入的有沒有生效;

6.追加信息成功,在文件末尾追加了abc

w是直接寫入 重建文件

a是在文件末尾追加內容。如果沒有文件就新建一個。

?

看下a+和 r+ 的區別


表達含義:

a+

1. xq5.txt文件進行 a末尾更新權限 +獲得讀的權限

2.讀取的是為空的,因為指針現在在文件結尾。沒有消息

3.釋放文件

r+

4.進行讀取更新。可讀可寫。

5.寫入內容 hello

6.因為寫入后文件為文件末尾,查看也為空,就釋放文件用讀的方式。

7.r 的方式對 xq5.txt文件進行操作。

8.打開感覺出現了替換的效果,用r的話,因為r的權限是讀,會從文件的開頭讀取,+是更新,可以寫入。產生了一個替換的效果。

?

?

到這里呢,對著三個模式的基本概念就明確了。

至于bU,如果要進行讀取 二進制的圖片 MP3這類文件或者一個程序,可以 進行 rb 進行讀取。

但是讀取出來的信息不是人類能搞懂的一個信息。

現在已經基本上講解了怎么讀 怎么寫。

讀有read readlinereadlines

寫有writewritelines

了解知識點,了解IO文件的 讀取 創建 寫入方法。

?

補充更新1.9

介紹幾個新功能

提交更新、偏移量、

FilcObject.flush()

提交更新案例

表達含義

1.先查看文件,

2.內容如下

3.釋放內存解除文件占用

4. r+ 讀取更新方式 賦值

5.寫入新的內容。

?

寫入命令 執行后 ,文件不會立即生效,

這個時候運用 .flush(),及時更新,文件重新打開立即生效。

如果不提交更新,當你用.close之后,把文件關掉,它會自動提交更新。

?

偏移量

FileObkect.seek (偏移量,選項)

文件 對象.查找

偏移? 代表你要移動幾位,,選項為? 位置選擇字符位置0

?

?

.seek例子

文件已經讀取過,選擇讀取,在讀是讀不到數據的。

因為指針,移動到了文件末尾,所以讀取后面內容為空。這個時候就運用到我們的方法了。

?

?

偏移量為0,選項為0,指針移動到文章開頭。

指針 從頭讀取得到內容。

?

偏移量為1 ,選項為0,指針從頭移動。移動一位。

讀取得到指針移動一位后的下面內容。

?

除了從開頭開始移動

還有兩種移動方式,

一種是表示從當前,指針所指向的位置,先后移動,選項為1

如果從文件的末尾像前移動的話,選項為2.

?

注意事項

PY3

這里是用r的方式打開的

注意純文本的文件,不允許從當前位置,從文件末尾,先前 或者先后移動。

區別點 py3中要用 rb? 二進制的方式去打開它,py2里可以直接用? r 讀取的方式打開

?

選項為 1 2 展示

選項1展示

選擇為1的顯示

1,用rb讀取方式。

2.b 代表用 二進制的方式讀取的,讀取全部內容

3.從當前位置,讀取,當前位置為末尾,向前讀取4

4.得到內容 48hh

?

選項為2的顯示。

選項為 2 的顯示,

1. rb 讀取二進制的方式,

2. b? 代表用二進制方式讀取的 ,讀取全部內容

3.偏移量為-2,代表向前移動,選項2 代表從文件末尾向前移動偏移量。

4.向前移動兩位得到后兩位結果 hh






2018年1月6號?王宇林



轉載于:https://blog.51cto.com/xwxhvip/2058006

總結

以上是生活随笔為你收集整理的Python文件操作IO open 读-取-写的全部內容,希望文章能夠幫你解決所遇到的問題。

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