[ Python ] 文件的讀寫操作
阿新 • • 發佈:2018-07-02
pri 使用 不能 分享圖片 Coding TP 讀寫操作 PE col
from=1 使用當前的位置作為參考位置
from=2 該文件的末尾將作為參考位置
1. 文件讀寫操作
讀寫文件是最常見的 IO 操作, Python 內置了讀寫文件的函數。
在磁盤上讀寫文件的功能是由操作系統提供的,所以讀寫文件是請求操作系統打開一個文件對象(通常稱為文件描述符),然後,通過操作系統提供的接口從這個文件對象中讀取數據,或者把數據寫入這個文件對象。
文件打開方式
open(file, mode=‘r‘, buffering=None, encoding=None) open 函數在打開一個文件 file: 打開文件的目錄路徑 mode: 打開文件的方式,讀寫; buffering: 緩沖 buffering 大小 encoding: 以什麽格式打開,常見:utf-8, GBK
不同模式打開文件的完全列表:
2. File 對象的屬性
一個文件被打開後, 你有一個file對象,你可以得到有關該文件的各種信息。
以下是和file對象相關的所有屬性的列表:
f = open(‘test.txt‘, ‘r‘, encoding=‘utf-8‘) print(‘文件名:‘, f.name) print(‘是否已關閉:‘, f.closed) print(‘訪問模式:‘, f.mode) # 執行結果: # 文件名: test.txt # 是否已關閉: False # 訪問模式:r
3. 文件定位
(1)tell
獲取被打開文件當前光標位置
f = open(‘test.txt‘, ‘r‘, encoding=‘utf-8‘) str1 = f.read(8) print(str1) print(‘光標當前位置:‘, f.tell()) f.close() # 執行結果: # abcdefgh # 光標當前位置: 8
(2)seek(offset [, from])
改變當前光標的位置,offset 變量表示要移動的字節數
from 變量指定開始移動字節的參考位置
from=0 將文件的開頭作為移動字節的參考
from=2 該文件的末尾將作為參考位置
f = open(‘test.txt‘, ‘r‘, encoding=‘utf-8‘) # read 方法讀取的是字符數,而不是字節數 str1 = f.read(8) print(‘【讀取前8個字符:】‘,str1) print(‘【當前光標的位置(單位字節):】‘, f.tell()) # 使用 seek 方法將光標一定到文件開始位置 f.seek(0, 0) print(‘【當前光標的位置(單位字節):】‘, f.tell()) print(‘【讀取文件所有內容:】‘, f.read()) # 執行結果: # 【讀取前8個字符:】 哪裏有彩虹告訴我 #【當前光標的位置(單位字節):】24 #【當前光標的位置(單位字節):】0 #【讀取文件所有內容:】哪裏有彩虹告訴我能不能把我的願望還給我
對文件內容操作的方法對應的操作單位:
根據各種模式,總結如下(+ 表示該模式能夠使用的具體操作):
參考文檔:
http://www.runoob.com/python/python-files-io.html
[ Python ] 文件的讀寫操作