python基礎八之檔案操作

2022-05-17 08:35:35 字數 3679 閱讀 7528

1,開啟檔案

編碼方式要和檔案的編碼方式相同!

#

open('路徑','開啟方式','指定編碼方式')

f = open(r'

e:\pycharm\學習\day8\test

', mode='

r', encoding='

utf-8

')

開啟方式:

唯讀 r

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.read())

只寫 w

with open('

test

', mode='

w', encoding='

utf-8

') as f:

f.write(

'舉頭望明月,低頭思故鄉。

') #

test檔案不存在則新建 存在則刪除原檔案的內容後新增新的

追加 a

with open('

test

', mode='

a', encoding='

utf-8

') as f:

f.write(

'舉頭望明月,低頭思故鄉。

') #

test檔案不存在則新建 存在則在原檔案內容的後面新增

讀寫 r+

with open('

test

', mode='

r+', encoding='

utf-8

') as f:

print

(f.read())

f.write(

'海上生明月,天涯共此時。

') #

先讀後寫 寫的新增到後面

with open('

test

', mode='

r+', encoding='

utf-8

') as f:

f.write(

'海上生明月,天涯共此時。')

print(f.read()) #

先寫後讀 寫的從頭開始逐一覆蓋新增

寫讀 w+

with open('

test

', mode='

w+', encoding='

utf-8

') as f:

f.write(

'舉頭望明月,低頭思故鄉。')

print(f.read()) #

相當於先w清空寫好內容後游標在最後索引r沒有任何內容

with open('

test

', mode='

w+', encoding='

utf-8

') as f:

print

(f.read())

f.write(

'舉頭望明月,低頭思故鄉。

') #

相當於先w清空 所以讀的內容為空 然後再寫入新的內容

2,操作檔案

讀檔案

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.read()) #

一次性讀取全部內容

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.readline()) #

一行一行讀取

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.readlines()) #

一次性讀取全部,轉換為列表,元素是每行的內容

寫檔案

with open('

test

', mode='

w', encoding='

utf-8

') as f:

f.write(

'舉頭望明月,低頭思故鄉。

') #

test檔案不存在則新建 存在則刪除原檔案的內容後新增新的

其他的操作方式

#

定義讀取的字元個數

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.read(2)) #

負數獲取全部 0為空

#

移動指標位置

with open('

test

', mode='

r', encoding='

utf-8

') as f:

f.seek(3) #

移動是按位元組數

#f.seek(2) # utf-8乙個中文字元三個位元組表示 所以2個位元組找不到報錯

print(f.read())

#

獲取字元指標的位置

with open('

test

', mode='

r', encoding='

utf-8

') as f:

f.read()

#將檔案讀完 指標移動到結尾

print(f.tell()) #

tell()返回指標位置

#

擷取指定長度的字元 擷取是按位元組數

with open('

test

', mode='

r+', encoding='

utf-8

') as f:

f.truncate(9) #

擷取前9個位元組,英文就是前九個 ,中文是前三個

3,關閉檔案

一般在操作完成後加close()來完成關閉檔案。(容易忘記!)

f = open(r'

e:\pycharm\學習\day8\test

', mode='

r', encoding='

utf-8')

content =f.read()

print

(content)

f.close()

#關閉

另外一種方式可以有效的避免忘記寫close()。

#

通過with ... as來進行檔案處理,最後會自動關閉檔案

with open('

test

', mode='

r', encoding='

utf-8

') as f:

print(f.read())

Python基礎 八 檔案操作

在工作中常常會涉及到檔案操作,例如日誌記錄,生成測試報告等。python常用的檔案操作主要包括開啟 讀取,寫入 關閉。一 開啟檔案 使用open file,mode,encoding 方法,其中 例如 f open file test.txt mode r encoding utf 8 open 方...

Python基礎之檔案操作

python的檔案操作還是比較簡單的基本分為三步 開啟,讀寫,關閉 檔案開啟 f open db r 開啟 f.read 讀 f.close 關閉 為了避免程式設計師忘記最後一步關閉,優雅的python使用了以下語句 with open db r as f,open db2 r as f2 opra...

python基礎之檔案操作

開啟檔案並輸出檔案內容模板 f open flie mode r encoding utf 8 data f.read 返回整個檔案資料 data f.readlines 以列 式,返回整個檔案資料 print data f.close flie檔案路徑 相對路徑或者絕對路徑 mode檔案開啟模式 ...