Ошибка при упаковке и распаковке двоичного файла с 8 и 16 битами в python - PullRequest
0 голосов
/ 28 декабря 2018

Здравствуйте. У меня ошибка при упаковке и распаковке бинарного файла, который выходит в сеть.Сообщение об ошибке:

"в магии _load_data, num = struct.unpack (" II ", flbl.read (8)) struct.error: для распаковки требуется буфер из 8 байт"

def _load_data(pth_images, pth_labels):
        with open(pth_labels, 'rb') as flbl:
            magic, num = struct.unpack("II", flbl.read(8))
            lbl = np.fromfile(flbl, dtype=np.int8)
        with open(pth_images, 'rb') as fimg:
            magic, num, rows, cols = struct.unpack("IIII", fimg.read(16))
            img = np.fromfile(fimg, dtype=np.uint8).reshape(len(lbl), rows, cols)
        return np.transpose(img, (0, 2, 1)), lbl - 1

Это странно, потому что я использовал «II» в struct.unpack () - два целых без знака, которые оба: 4 + 4 = 8 укусов, (ранее это были «> II» и «> IIII "формат) почему переводчик показывает мне ошибку?Спасибо.

...