GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Somar itens repetidos em uma lista

python
Tags: #<Tag:0x00007ff78b1dd168>

#1
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?


#2

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