如何在Python中以类似C的方式读取文件头?
我刚开始学习Python,之前是做C语言程序员的。我有一个文件,它的开头有一些特定的数据,我需要提取这些数据。比如,字节0到5是一个魔数,字节6到8是偏移量等等。
在C语言中(举个例子):
struct {
int32_t payload_offset,
int32_t len,
char *magic,
int32_t type
int32_t header_size
} file_hdr;
然后在我的函数里,我这样做:
file_hdr *hdr;
ptr = &hdr;
fd = open(path_to_file, "r");
num_read = read(fd, ptr, bytes).
这样我就可以像这样访问头部数据,比如ptr->type,ptr->magic等等。
我该如何在Python中实现类似的效果呢?因为Python的变量没有类型,访问文件头部数据的最佳方法是什么?
我需要用到这些头部数据来做一些决策。
提前谢谢大家。