python 檔案操作

2022-05-29 22:12:21 字數 3732 閱讀 2077

開啟檔案

對檔案控制代碼進行相應的操作

關閉檔案

1.2 、檔案的功能模式

f1 = open(r'd:\bb.txt', encoding='utf-8', mode='r')

content = f1.read()

print(content)

f1.close()

# open 內建函式

# f1,變數,檔案控制代碼,對檔案的任何操作都得通過檔案控制代碼完成,在記憶體當中只占用一行檔案的資料

# encoding 可以不寫,不寫得預設編碼本是作業系統得預設編碼

# f1.close()關閉檔案控制代碼

f1 = open(r'd:\bb.txt', encoding='utf-8', mode='r')

content = f1.read(5) # 讀取游標後五個字元

print(content)

f1.close()

f1 = open(r'd:\bb.txt', encoding='utf-8', mode='r')

print(f1.readline())

print(f1.readline())

f1.close()

f1 = open(r'd:\bb.txt', encoding='utf-8', mode='r')

print(f1.readlines())

f1.close()

# f1.readline() 逐行讀取

# f1.readlines() 返回乙個列表,列表中的每個元素是原始檔的每一行

f1 = open(r'd:\bb.txt', encoding='utf-8', mode='r')

f1.close()

f = open('檔案的寫',encoding='utf-8',mode='w')

f.write('隨便寫一點')

f.close()

# 如果檔案存在,先清空原始檔內容,在寫入新內容,如沒有則新建立

f1 = open(r'c:\users\19595\pictures\desktopbackground\aa.jpg', mode='rb')

# 以二進位制讀取aa.jpg,再將讀取後的二進位制寫入到bb.jpg形成新檔案

f = open('bb.txt',encoding='utf-8',mode='a')

f.write('我最帥')

f.close()

# 沒有檔案建立檔案,追加內容,有檔案再檔案末尾追加內容

f = open('bb.txt',encoding='utf-8',mode='r+')

content = f.read()

print(content)

f.write('我最帥')

f.close()

f = open('bb.txt',encoding='utf-8',mode='r')

print(f.tell())

content = f.read()

print(content)

print(f.tell())

f.close()

f = open('bb.txt',encoding='utf-8',mode='r')

f.seek(82) #移動游標的82位元組的位置

print(f.tell())

content = f.read()

print(content)

print(f.tell())

f.close()

f = open('檔案的寫',encoding='utf-8',mode='w')

f.write('隨便寫一點')

f.flush()

f.close()

# 在write後跟乙個flush強制儲存

with open('bb.txt',encoding='utf-8',mode='r') as f:

print(f.read())

with open('bb.txt', encoding='utf-8', mode='r') as f, open('檔案的寫', encoding='utf-8', mode='w') as f1:

print(f.read())

f1.write('我最帥')

# 優點,不用每次手動關閉檔案,可以同時操作多個檔案

以讀得模式開啟原始檔

以寫得模式建立乙個新檔案

將原始檔的內容讀出來修改成新內容,寫入新檔案

將原始檔刪除

將新檔案從命名成原始檔

# low版,缺點是同時載入檔案所有內容,檔案太大是,記憶體會比較緊張

import os

# 1. 以讀得模式開啟原始檔

# 2. 以寫得模式建立乙個新檔案

with open('bb.txt',encoding='utf-8',mode='r') as f, \

open('bb.txt_bak',encoding='utf-8',mode='w') as f1:

# 3.將原始檔的內容讀出來修改成新內容,寫入新檔案

old_content = f.read()

new_content = old_content.replace('我最帥','我牛逼')

f1.write(new_content)

# 4. 將原始檔刪除

# 5. 將新檔案從命名成原始檔

os.remove('bb.txt')

os.rename('bb.txt_bak','bb.txt')

# 改進版, 逐行迴圈,逐行修改

import os

# 1. 以讀得模式開啟原始檔

# 2. 以寫得模式建立乙個新檔案

with open('bb.txt',encoding='utf-8',mode='r') as f, \

open('bb.txt_bak',encoding='utf-8',mode='w') as f1:

# 1.將原始檔的內容讀出來修改成新內容,寫入新檔案

for line in f:

# 逐行迴圈,逐行修改

new_line = line.replace('我牛逼','我最帥')

f1.write(new_line)

os.remove('bb.txt')

os.rename('bb.txt_bak','bb.txt')

python 檔案操作

簡明 python 教程 中的例子,python 執行出錯,用open代替file 可以執行。poem programming is fun when the work is done if you wanna make your work also fun use python f open e ...

python檔案操作

1,將乙個路徑名分解為目錄名和檔名兩部分 a,b os.path.split c 123 456 test.txt print a print b 顯示 c 123 456 test.txt 2,分解檔名的副檔名 a,b os.path.splitext c 123 456 test.txt pri...

Python 檔案操作

1.開啟檔案 如下 f open d test.txt w 說明 第乙個引數是檔名稱,包括路徑 第二個引數是開啟的模式mode r 唯讀 預設。如果檔案不存在,則丟擲錯誤 w 只寫 如果檔案 不存在,則自動建立檔案 a 附加到檔案末尾 r 讀寫 如果需要以二進位制方式開啟檔案,需要在mode後面加上...