Я читаю двоичный файл с модулем 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)
Тогда как читатьэто из двоичного файла?