A lista em python esta assim: [‘300’, ’100’, ‘100’, ‘300’], por isso ela n consegue somar com o comando “sum” alguém sabe uma maneira de tirar as aspas de dentro da lista?
Soluções para a tarefa
Os dados na lista dada são strings (cadeia de caracteres), não números e, por isso, não podemos utilizar a função sum() diretamente.
Primeiro vamos precisar "tratar" os dados, convertendo-os de string para inteiros (ou float). Assim, podemos percorrer os dados da lista com um laço for, converte-los com a função de casting int() e adiciona-los a uma lista auxiliar.
Nessa lista auxiliar [300 , 100 , 100 , 300], poderemos utilizar a função sum().
Veja o código abaixo, onde lista_original é a lista com os dados do tipo string e lista_conv, a lista com os dados da lista_original convertidos para inteiro.
lista_original = ['100' , '300' , '100' , '300']
lista_conv = list()
for i in lista_original:
.....lista_conv.append(int(i))
print(lista_conv)
print(sum(lista_conv))
Podemos ainda utilizar uma forma compactada para montar a lista_conv:
lista_original = ['100' , '300' , '100' , '300']
lista_conv = [int(i) for i in lista_original]
print(lista_conv)
print(sum(lista_conv))