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

歡迎訪問 生活随笔!

生活随笔

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

python

python按行读取文件 with open_python笔记——文件读写操作过程(open与with open的区别)...

發(fā)布時間:2025/3/19 python 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python按行读取文件 with open_python笔记——文件读写操作过程(open与with open的区别)... 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文件的讀寫通常包含以下步驟:

文件的打開:open()

open或with open會返回文件對象,必須用read或readlines之后才能打印

在此我會介紹with open 與open之間的區(qū)別。提前劇透with open優(yōu)于open

文件的讀入:read()

文件的寫入:write()

文件的關(guān)閉:close()

另外介紹兩個模塊的內(nèi)容:

文件的定位

文件的屬性

一、文件的打開:open與with open(返回文件對象)

1、open

open(file, mode=‘r’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

file

:包含路徑的文件名。絕對路徑或者是相對路徑

mode|

:選擇不同的模式可以對文件進行不同的操作,

默認屬性’rt’

,即以只讀方式打開文本文件。

模式

描述

‘r’

只讀方式: 默認屬性

‘w’

寫入模式:如果該文件已存在則打開文件,并從開頭開始編輯,原有內(nèi)容被刪除。如果文件不存在,創(chuàng)建新文件

‘x’

只寫模式:新建一個文件,如果該文件已存在則會報錯。

‘a(chǎn)’

追加模式:如果文件存在,指針放在文件結(jié)尾。新內(nèi)容將會被寫入到已有內(nèi)容之后。如果文件不存在,創(chuàng)建新文件寫入

‘b’

二進制模式。

‘t’

文本模式: 默認屬性

‘+’

打開一個文件進行更新(可讀可寫)

‘U’

通用換行模式(不推薦)

以下幾點是總結(jié):參考原文:https://www.cnblogs.com/xyf9575/p/7039548.html

w 寫模式,它是不能讀的,如果用w模式打開一個已經(jīng)存在的文件,會清空以前的文件內(nèi)容,重新寫

w+ 是讀寫內(nèi)容,只要

沾上w,肯定會清空原來的文件

r 讀模式,只能讀,不能寫,而且文件必須存在

r+ 是讀寫模式,只要

沾上r,文件必須存在

a 追加模式,也能寫,在文件的末尾添加內(nèi)容

rb+、wb+、ab+,這種是二進制模式打開或者讀取,一些音樂文件

2、with open與open的區(qū)別

with open() as f的好處

無論出現(xiàn)是否出現(xiàn)error都會關(guān)閉文件

使用它的時候python會自動確定關(guān)閉時間,你只管打開文件并使用它。

所以with open 是我們的首選,而非只使用open

二、文件的讀入:

此模塊常用的函數(shù)有:

f.read():一次性讀取整個文件

或類似f.read(10)讀取從指針開始的10個字符。

f.readlines():每次讀取文件的一行,存入列表中

pandas中還有一些:

pi_digits.txt

3.1415926535

8979323846

2643383279

file_reader.py(看一下read()和readlines()的區(qū)別)

>>

>

file_name

=

'pi_digits.txt'

>>

>

with

open

(

file_name

)

as

f

:

>>

>

print

(

f

.

read

(

)

)

>>

>

print

(

f

.

readlines

(

)

)

3.1415926535

8979323846

2643383279

###以上三行結(jié)果是read的

[

'3.1415926535\n'

,

' 8979323846\n'

,

' 2643383279'

]

### 此行結(jié)果是readlines的

三、文件的寫入

1、寫入空文件:以’w’方式打開文件。

demo1

file_name

=

"love_letter"

with

open

(

love_letter

,

'w'

)

as

f

:

f

.

write

(

"I love you\n"

)

f

.

write

(

"i love you\n"

)

最終會顯示

I love you

i love you

2、在舊文件后面添加新內(nèi)容:以’a’方式打開

demo2

file_name

=

"love_letter"

with

open

(

file_name

,

'a'

)

as

f

:

f

.

write

(

"I also love you\n"

)

最終會在demo1下面添加一行

I also love you

四、文件的關(guān)閉

如果是with open打開的不用管這個,如果是open打開的則需要在文末輸入下列代碼

f

.

close

(

)

五、文件的定位(指針)

指針就相當于我們在word中輸入時候的光標,光標在哪文件就從哪開始輸入。

f.tell():報告當前指針位置

f.seek(offset,from)

offset代表文件指針的偏移量,

from代表從何處開始算:0代表文件起始位置,1代表當前位置,2代表文件末尾)偏移offset個字節(jié))

使用open()方法打開文件時候,指針會默認在文件開始的地方。

f.read(3)是從指針所在的地方往后讀取三個字符,也就是說不改變指針的位置的話,f.read(3)就是讀取文件開頭的三個字符。

f.write()則是將指針放在文件末尾進行寫入,寫完之后指針依舊會在文件末尾。

總結(jié)

以上是生活随笔為你收集整理的python按行读取文件 with open_python笔记——文件读写操作过程(open与with open的区别)...的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。