Python | os.pread 函數

文件偏移量不變

最近更新時間 2020-12-11 15:15:26

os.pread 函數從文件描述符 fd 所指向文件的偏移位置 offset 開始,讀取至多 n 個字節,而保持文件偏移量不變。

返回所讀取字節的字節串 (bytestring)。如果到達了 fd 指向的文件末尾,則返回空字節對象。

os.pread() 適用於低級 I/O 操作,必須使用 os.open() 或 os.pipe() 返回的文件描述符。

函數定義

os.pread(fd, n, offset)
# 函數定義

if sys.platform != 'win32':
    # Unix only
    ...
    def pread(__fd: int, __length: int, __offset: int) -> bytes: ...
    ...

兼容性:Unix 系統。

參數

  • checkfd - 文件描述符。
  • checkn - 需求讀取的字符長度。
  • checkoffset - 文件位置偏移量。

返回值

  • checkbytes - 返回的字符串。

示例1: - 使用 os.pread() 函數讀取 2 個字節的長度。

# coding=utf-8

# Python3 代碼
# 講解怎樣使用 os.pread() 函數讀取文件

# 引入 os 庫
import os

# 文件路徑
path = "foo.txt"

# 使用 os.open 函數打開文件
fd = os.open(path, os.O_RDONLY)

# 讀取第 3 個字節後面的兩個字符
# 不包括第 3 個位置的字符
str = os.pread(fd, 2, 3)
print(str)

# 關閉文件
os.close(fd)
b'45'
rss_feed