Somar itens repetidos em uma lista

1 resposta Resolvido
python
D
def ordena():
soma = []

arquivo = open("produto_vendas_visitas.txt", "r")

for linha in arquivo:
    valores = linha.split(";")
    soma.append((valores[0], (int(valores[1])*2) + int(valores[2])))

arquivo.close()

# Ordenando a lista
soma.sort(key=lambda x: x[1], reverse=True)

# Imprimindo a lista
for s in soma:
    print(s)

if __name__ == '__main__':
    ordena()

A saída fica:

(‘ID-789’, 197) (‘ID-123’, 174) (‘ID-ABC’, 174) (‘ID-567’, 112) (‘ID-567’, 84)

Os ID’s 567 repetem, como faço para somar eles?

1 Resposta

D
Solucao aceita

Respondendo ao meu próprio post, eu consegui usando dicionário. Com lista eu não consigo fazer essa soma dos valores repetidos.

Criado 20 de setembro de 2017
Ultima resposta 20 de set. de 2017
Respostas 1
Participantes 1