Informática, perguntado por osorinhoramosneto, 7 meses atrás

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

Respondido por GeBEfte
3

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))

\Huge{\begin{array}{c}\Delta \tt{\!\!\!\!\!\!\,\,o}\!\!\!\!\!\!\!\!\:\,\perp\end{array}}Qualquer~d\acute{u}vida,~deixe~ um~coment\acute{a}rio

Anexos:
Perguntas interessantes