Хотя struct
лучше всего подходит для распаковки коллекции «скалярных» двоичных значений, когда у вас есть последовательность 4-байтовых двоичных операций с плавающей запятой в строке один за другим, модуль array идеально. В частности, это так просто, как:
import array
thefloats = array.array('f', thestring)
Если только часть thestring
содержит последовательность 4-байтовых двоичных чисел с плавающей запятой, вы можете построить массив из этой части, используя соответствующий фрагмент строки вместо всей строки. Экземпляр array
предлагает большую часть функциональности list
(плюс удобные методы для преобразования в / из строк байтов и переключения между формами с прямым и обратным порядком байтов при необходимости), но он менее гибок (могут быть только плавающие числа в массиве) и значительно более компактный (может занимать в 3-4 раза меньше памяти, чем список с такими же элементами).