Получить список значений десятичного типа без имени класса - PullRequest
1 голос
/ 15 февраля 2020

когда я запускаю этот запрос в django:

list(InputDataDetailItem.objects.filter(wage_detail__wage=wage).values_list('value',flat=True))

Я получаю:

[Decimal('30.00'), Decimal('0.00'), Decimal('0.00')]

, но я хочу:

[30.00,0.00,0.00]

Как я могу сделай это? Спасибо.

1 Ответ

1 голос
/ 15 февраля 2020

Это потому что (вероятно) это DecimalField [Django -doc] . Вы можете преобразовать их, вызвав для них float:

[   <b>float(x)</b>
    for x in InputDataDetailItem.objects.filter(
        wage_detail__wage=wage
    ).values_list('value',flat=True)]

Обратите внимание, что, поскольку Decimal кодирует цифры, тогда как число с плавающей запятой кодирует двоичный код, возможны (небольшие) ошибки округления.

...