我正在使用struct
模块读取二进制文件
f = open('myfile', 'br')
struct_fmt = "i6i"
struct_len = struct.calcsize(struct_fmt)
struct_unpack = struct.Struct(struct_fmt).unpack_from
r = struct_unpack(f.read(struct_len))
filetype = r[0]
head = r[1:7]
我想知道我是否可以在更高层次上做某事,例如
from dataclasses import dataclass
@dataclass
class Header:
filetype: int
head: ### what here? I want an array of 6 integer
header = magic(f, Header)
# or header = Header.magic(f)
然后,如何从二进制文件读取它?