python 之 檔案操作

2021-10-12 18:47:46 字數 3954 閱讀 1645

檔案的作用

將資料長期儲存下來,在需要的時候使用

文字檔案和二進位制檔案

二進位制檔案

計算機中要操作檔案的套路非常固定,一共包含三個步驟

開啟檔案

讀、寫檔案

關閉檔案

序號函式/方法

說明01

open

開啟檔案,並且返回檔案操作物件

02read

將檔案內容讀取到記憶體

03write

將指定內容寫入檔案

04close

關閉檔案

read方法可以一次性讀入返回檔案的所有內容close方法負責關閉檔案注意read方法執行後,會把檔案指標移動到檔案的末尾

# 1. 開啟 - 檔名需要注意大小寫

file = open("readme")

# 2. 讀取

text = file.read()

print(text)

# 3. 關閉

file.close()

提示檔案指標(知道)

思考

答案

語法如下:

f = open("檔名", "訪問方式")

訪問方式說明r

唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭,這是預設模式。如果檔案不存在,丟擲異常

w以只寫方式開啟檔案。如果檔案存在會被覆蓋。如果檔案不存在,建立新檔案

a以追加方式開啟檔案。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果檔案不存在,建立新檔案進行寫入

r+以讀寫方式開啟檔案。檔案的指標將會放在檔案的開頭。如果檔案不存在,丟擲異常

w+以讀寫方式開啟檔案。如果檔案存在會被覆蓋。如果檔案不存在,建立新檔案

a+以讀寫方式開啟檔案。如果該檔案已存在,檔案指標將會放在檔案的結尾。如果檔案不存在,建立新檔案進行寫入

提示

寫入檔案示例

# 開啟檔案

f = open("readme", "w")

f.write("hello python!\n")

f.write("今天天氣真好")

# 關閉檔案

f.close()

readline方法

讀取大檔案的正確姿勢

# 開啟檔案

file = open("readme")

while

true:

# 讀取一行內容

text = file.readline()

# 判斷是否讀到內容

ifnot text:

break

# 每讀取一行的末尾已經有了乙個 `\n`

print(text, end="")

# 關閉檔案

file.close()

目標用**的方式,來實現檔案複製過程

小檔案複製

# 1. 開啟檔案

file_read = open("readme")

file_write = open("readme[復件]", "w")

# 2. 讀取並寫入檔案

text = file_read.read()

file_write.write(text)

# 3. 關閉檔案

file_read.close()

file_write.close()

大檔案複製
# 1. 開啟檔案

file_read = open("readme")

file_write = open("readme[復件]", "w")

# 2. 讀取並寫入檔案

while

true:

# 每次讀取一行

text = file_read.readline()

# 判斷是否讀取到內容

ifnot text:

break

file_write.write(text)

# 3. 關閉檔案

file_read.close()

file_write.close()

python中,如果希望通過程式實現上述功能,需要匯入os模組

序號方法名

說明示例

01rename

重新命名檔案

os.rename(源檔名, 目標檔名)

02remove

刪除檔案

os.remove(檔名)

序號方法名

說明示例

01listdir

目錄列表

os.listdir(目錄名)

02mkdir

建立目錄

os.mkdir(目錄名)

03rmdir

刪除目錄

os.rmdir(目錄名)

04getcwd

獲取當前目錄

os.getcwd()

05chdir

修改工作目錄

os.chdir(目標目錄)

06path.isdir

判斷是否是檔案

os.path.isdir(檔案路徑)

python 2.x 預設使用ascii編碼格式

python 3.x 預設使用utf-8編碼格式

ascii編碼

utf-8編碼格式

python 2.x 預設使用ascii編碼格式

python 3.x 預設使用utf-8編碼格式

# *-* coding:utf8 *-*

這方式是官方推薦使用的!

# coding=utf8

unicode 字串
# *-* coding:utf8 *-*

# 在字串前,增加乙個 `u` 表示這個字串是乙個 utf8 字串

hello_str = u"你好世界"

print(hello_str)

for c in hello_str:

print(c)

Python之檔案操作

file open filename,mode mode預設為 r 例如file ope test.txt r 以讀的方式開啟檔案.檔案操作完畢記得關閉.file.close 其中,mode可以有以下選擇 檔案test.txt的內容為 11111111111 aaaaaaaaa 2222222222...

Python之檔案操作

使用open w 以寫入模式開啟,如果檔案存在將會刪除裡面的所有內容,然後開啟這個檔案進行寫入 a 以追加模式開啟,寫入到檔案中的任何資料將自動新增到末尾 fobj open home coder documents obama.txt 唯讀開啟 fobj fobj.close 關閉檔案 fobj ...

Python之檔案操作

建立目錄import os import errno defmkdir dir try os.makedirs dir except oserror as exc if exc.errno errno.eexist print the dir has been existed pass else r...