Я плохо знаком с 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-> тип, ptr-> волшебство и т.д.
Как я достигаю подобного эффекта в Python? Так как переменные Python не имеют типов, что лучший способ состоит в том, чтобы получить доступ к данным заголовка файла?
Я должен использовать данные заголовка для того, чтобы принять некоторые решения.
Заранее спасибо.
Одним из способов использования структуры Python
Module, Docs здесь .
Другой вариант, если вам нужно что-то более мощное, состоит в том, чтобы использовать потрясающую библиотеку , которая может сделать вышеупомянутое и многое другое.
Вы, вероятно, должны использовать довольно последние последние Windows Windows Foundation (WDF) Framework вместо более старых WDM Framework. Хорошая отправная точка читает Обзор WDF Word Word Documents .
Если вы хотите прочитать книгу, «Развивающие драйверы с помощью фонда водителя Windows» - это тот, который вы ищете.
-121--2160881-Обычно это делается с использованием модуля структуры в Python. Это позволяет извлекать значения из упакованных двоичных представлений, приводимые в действие строками спецификации формата.
Вы загрузите данные в использовании двоичного ввода / вывода в строку, затем распакуйте его с помощью struct.unpack ().