Python, ошибка с плавающей запятой: неподдерживаемые типы операндов для +: 'float' и 'list' - PullRequest
0 голосов
/ 17 июня 2020

Я установил следующий класс:

class StatoPatrimoniale(models.Model):
    reference_date=models.DateField()
    cassa=models.DecimalField()

И я установил следующую функцию:

def stato_patrimoniale(request):
    now=datetime.datetime.now()
    last_account_year=float(now.year)-1
    list_diff=[]
    list_diff = float(StatoPatrimoniale.objects.filter(reference_date__year=last_account_year).values_list('cassa')[0][0])

Но python дает мне следующую ошибку:

 unsupported operand type(s) for +: 'float' and 'list'
 list_diff = float(StatoPatrimoniale.objects.filter(reference_date__year=last_account_year).values_list('cassa')[0][0])

Почему? В чем проблема?

1 Ответ

1 голос
/ 17 июня 2020

Я воспроизвел ошибку:

TypeError: unsupported operand type(s) for +: 'float' and 'list'

, но не с приведенным выше кодом. Вместо этого я поставил:

list_diff = float() + list_diff

list_diff - это список, а float () - это float, вы не можете этого сделать

Замените его на

list_diff.append(float())
...