У меня есть список вложенных кортежей, в котором второй элемент на поплавок:Sum элемент внутри кортежа
l = [('drink', ['vodka', '9.2', 'beer', '6.3', 'alcohol', '5.4', 'gin', '2.1', 'liquid']),
('evict', ['tenant', '66.0', 'squatter', '2.75', 'owner', '1.1', 'bum', '1.0', 'deadbeat', '1.0'])]
Я хочу суммировать три первых пунктов в списке, и добавить результат к началу , как это:
l = [('drink', 20.9 ['vodka', '9.2', 'beer', '6.3', 'alcohol', '5.4', 'gin', '2.1']),
('evict', 69.75 ['tenant', '66.0', 'squatter', '2.75', 'bum', '1.0', 'deadbeat', '1.0'])]
Я использую код ниже:
sorted_by_sum=[]
for t in l:
tup=[t[0]]
tup.append(t[1])
tup.append(sum(float(x) for x in t[0][1:6:2]))
sorted_by_sum.append(tuple(tup))
Но я получаю ошибку:
ValueError: could not convert string to float: 'a'
Любые подсказки о том, как исправить это? Я очень благодарю вас за это.
я работал красиво ! Спасибо огромное! Я соглашусь как можно скорее! – user3008918