0
讀取已打開文件的第一個字節而不搞亂文件位置的最佳方法是什麼?這是太多的跳來跳去:在Python中讀取打開文件的第一個字節
current_position = f.tell()
f.seek(0)
b1 = f.read(1)
b2 = f.read(1)
f.seek(current_position, 0)
讀取已打開文件的第一個字節而不搞亂文件位置的最佳方法是什麼?這是太多的跳來跳去:在Python中讀取打開文件的第一個字節
current_position = f.tell()
f.seek(0)
b1 = f.read(1)
b2 = f.read(1)
f.seek(current_position, 0)
你可以使用os.pread(fd, buffersize, offset)
但只在Python 3.3增加。像這樣:
os.pread(f.fileno(), 2, 0)
讀取文件開始處的2個字節。
另一種辦法是複製的fd
,然後尋求在重複,然後關閉重複:
d = os.dup(f.fileno())
os.lseek(d, 0, 0)
b1 = os.read(d, 1)
b2 = os.read(d, 1)
os.close(d)
爲什麼不能文件對象直接複製?
你想達到什麼目的?爲什麼不在第一次打開文件時存儲前幾個字節? – jonrsharpe
我看到這段代碼沒有錯。 –
您所指的文件'位置'只是一個小型整數,其行爲與書籤相當。移動它並不是什麼大事。 –