Python中對檔案的操作

2021-08-21 19:03:25 字數 4385 閱讀 6606

在python中要操作檔案需要記住的1個函式和3個方法

python中一切皆物件

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

read :將檔案內容讀取到記憶體

write :將指定內容寫入檔案

close :關閉檔案

open函式負責開啟檔案,賓且返回檔案物件

read/write/close三個方法都需要通過檔案物件來呼叫

read方法–讀取檔案

open函式的第乙個引數是要開啟的檔名(檔名區分大小寫)

如果檔案存在,返回檔案操作物件

如果檔案不存在,會丟擲異常

read方法可以一次性讀入並返回檔案的所有內容

close方法負責關閉檔案

# 如果忘記關閉檔案,會造成系統消耗,而且會影響到後續對檔案的訪問

# 1.開啟檔案

file = open('redme')

# 2.操作檔案 讀/寫

# read方法:讀取檔案內容(一次性返回檔案的所有內容)

text = file.read()

print text

# 3.關閉檔案

# close方法:負責關閉檔案

file.close()

# 在開發中,通常會先編寫開啟和關閉的**

檔案指標:

檔案指標標記從哪個位置開始讀取資料

第一次開啟檔案時,通常檔案指標會指向檔案的開始位置

當執行了read方法後,檔案指標會移動到讀取內容的末尾

"""

# 1.開啟檔案

file = open('redme')

# 2.操作檔案 讀/寫

# read方法:讀取檔案內容(一次性返回檔案的所有內容)

text = file.read()

print text

print '*' * 50

# 第一次讀取的時候,檔案指標移動到了檔案的末尾

# 再次呼叫不會讀取到任何內容

text = file.read()

print text

# 3.關閉檔案

# close方法:負責關閉檔案

file.close()

示例一

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

# 1.開啟檔案

file = open('/home/kiosk/file')

# 2.操作檔案 讀/寫

# read方法:讀取檔案內容(一次性返回檔案的所有內容)

text = file.read()

print text

# 列印輸入內容的長度

print type(text)

print len(text)

print '*' * 50

text = file.read()

print text

print len(text)

# 3.關閉檔案

# close方法:負責關閉檔案

file.close()

以追加方式開啟檔案

如果該檔案存在,檔案指標會放在檔案的末尾

如果檔案不存在,建立檔案並寫入

# 1.開啟檔案

file = open('redme','a')

# 2.寫入檔案

file.write('linux')

# 3.關閉檔案

file.close()

按行讀取檔案

read方法缺省會把檔案的所有內容一次性讀到記憶體

如果檔案太大,對記憶體的占用會非常嚴重

readline方法:

readline方法可以一次性讀取一行內容

方法執行後,會把檔案指標移動到下一行,準備再次讀取

"""

# 讀取大檔案的正確姿勢

file = open('redme')

# 為什麼要寫成死迴圈:因為我們不知道要讀取的檔案有多少行

while true:

text = file.readline()

# 如果檔案指標到檔案的最後一行,那麼就讀不到內容了

if not text:

break

# 每讀取乙個行,末尾都已經有乙個\n

print text

file.close()

# 1.開啟檔案

# 原始檔以唯讀的方式開啟

file_read = open('redme')

# 目標檔案以寫的方式開啟

file_write = open('readme_copy','w')

# 從原始檔中讀取內容

text = file_read.read()

# 將讀取到的內容寫到目標檔案中

file_write.write(text)

# 關閉檔案

file_read.close()

file_write.close()

# 1.開啟檔案

# 原始檔以唯讀的方式開啟

file_read = open('redme')

# 目標檔案以寫的方式開啟

file_write = open('readme_copy','w')

# 從原始檔中讀取內容

text = file_read.read()

# 將讀取到的內容寫到目標檔案中

file_write.write(text)

# 關閉檔案

file_read.close()

file_write.close()

# 1.開啟檔案

file_read = open('redme')

file_write = open('readme_copy','w')

# 讀寫

while true:

text = file_read.readline()

ifnottext:

break

file_write.write(text)

# 關閉

file_read.close()

file_write.close()

關鍵字with在不需要訪問檔案後將其關閉,在這個程式中,

我們呼叫了open(),但沒有呼叫close();你也可以呼叫open()和close來開啟

和關閉檔案,但這樣做時,如果程式存在bug,導致close()語句沒有執行,

檔案將不會關閉,未妥善地關閉檔案可能會導致資料丟失或受損,

如果在程式中過早地呼叫close(),

你會發現需要使用檔案時它已經關閉(無法訪問),

這會導致更多地錯誤,你並非在任何情況下都能輕鬆地確定關閉檔案地恰當時機

通過使用with結構,可讓python去確定,

你只管開啟檔案,並在需要時使用它,

python會在合適的時候自動將其關閉

"""

with open('pi_digits') as file_object:

contents = file_object.read()

print contents

"""

filename = 'pi_digits'

with open(filename) as file_object:

for line in file_object:

print line

filename = 'pi_digits'

with

open(filename) as file_object:

lines = file_object.readline()

forline

inlines:

print line

filename = 'linux'

with

open(filename,'w') as file_object:

file_object.write('i love python.\n')

file_object.write('i love linux.')

filename = 'linux'

with

open(filename,'a') as file_object:

file_object.write('i love python.\n')

file_object.write('i love linux.')

python中對檔案的操作

在變數,序列 這裡的序列其實就是元組,列表,字串,集合,字典 和物件中儲存的資料是暫時的,程式結束就會丟失。為了能夠長世界地儲存程式中的資料,需要將程式中的資料儲存到磁碟檔案長。python提供了內建的檔案物件,目錄操作的內建模組 在python中,內建了檔案 file 物件。在使用檔案物件時,首先...

python中對檔案的相關操作

開啟檔案三步驟 開啟 操作 關閉 f open 開啟檔案 f.close 關閉檔案 對檔案的操作 在 tmp passwd檔案中寫入hello 開啟檔案 f open tmp passwd w 開啟 tmp passwd檔案,以w的方式開啟檔案 讀操作 content f.read print co...

python對檔案操作

python中對檔案 資料夾 檔案操作函式 的操作需要涉及到os模組和shutil模組。得到當前工作目錄,即當前python指令碼工作的目錄路徑 os.getcwd 返回指定目錄下的所有檔案和目錄名 os.listdir 函式用來刪除乙個檔案 os.remove 刪除多個目錄 os.removedi...