Это немного зависит от вашего варианта использования.Если вы получаете список с плавающей точкой в виде строки и вам никогда не нужны сами значения, подклассы CharField являются разумными.Тем не менее, это не особенно экономит место, и вам нужно выполнить преобразование, если вы хотите что-то сделать с числами, отличными от их отображения.
Если у вас длинные списки с плавающей точкой, часто нужно искать, использовать,или измените их значения, и пытаясь сэкономить место в БД, вы можете рассмотреть либо использование PickledObjectField , либо запись чисел с плавающей точкой в двоичную строку (например, запись в двоичный файл), а также сохранение этой двоичной строки с помощью BinaryField .
PickledObjectField является излишним, но если вы можете изменить структуру этого объекта позже или добавить вещи, которые не являются плавающими, это, вероятно, путь.
BinaryField - это тот, который хранит числа в форме, наиболее близкой к их необработанным / внутренним формам.Это означает, что у него должно быть самое компактное хранилище, самые быстрые поиски и преобразования, и наименьшее количество ошибок при округлении или преобразовании.Пакет struct предоставляет функции для преобразования в двоичные строки и из них.