[英]Read first bytes of open file in 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)
為什么不能直接復制文件對象?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.