Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: XD YO en 4 Marzo 2010, 01:22 AM

Título: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: XD YO en 4 Marzo 2010, 01:22 AM
Hola, ha sido un largo tiempo sin pasarme por aqui  ;D.

Estoy intentando resolver el problema de las sumatorias de una serie de valores que contiene una lista, pero no logro encontrar una solución, ya que lo mas que e conseguido a sido sumar los dos primeros valores y después los dos siguiente y así sucesivamente  :-\.

Es para poder resolver de una forma menos tediosa los molestos problemas de estadística   >:D

De antemano, gracias
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Carloswaldo en 4 Marzo 2010, 04:22 AM
Usa un for que recorra todos los elementos de la lista y los vas sumando en un acumulador.

¿Tienes al menos un pequeño código de haberlo intentado?
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Novlucker en 4 Marzo 2010, 05:01 AM
También hay alguno que otro truco, como el siguiente :P

Código (python) [Seleccionar]
numeros = [1,5,6,3,10,4]
print(eval('+'.join(numeros)))


Y se me ocurrió a mi solito ::)

:xD

Saludos
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Carloswaldo en 4 Marzo 2010, 05:20 AM
Eres un master xD
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: XD YO en 9 Marzo 2010, 14:54 PM
 :-[ :-[
bueno, casi no e tenido tiempo...(semana de examenes); pero, bueno,  esta es la forma en que lo intento:

lista=[1,2,3,4,5,6,7,8,9,10]
for i in lista:
    suma=0
    suma += i
    print suma


Supongo que a de ser algun error aparentemente insignificante del que no me he dado cuenta. :-[

Gracias
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Novlucker en 9 Marzo 2010, 15:07 PM
El problema es que tienes la variable suma dentro del FOR, debes de crearla afuera, ya que de lo contrario la creas cada vez que pasas, y no guardas el valor de la suma

Código (python) [Seleccionar]
lista=[1,2,3,4,5,6,7,8,9,10]
suma=0
for i in lista:
suma += i
print suma


Saludos
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Иōҳ en 9 Marzo 2010, 18:01 PM
este..

la forma de hacerlo es crear un acumulador

acum = acum + suma

y lo podras poner dentro del for, sin ningun problema :)
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Novlucker en 9 Marzo 2010, 18:07 PM
Es lo que ha hecho :rolleyes: .. solo que hay que remarcar que dicho "acumulador" debe de crearse fuera del for, para que de este modo sea global

Saludos
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Иōҳ en 9 Marzo 2010, 18:18 PM
global te refieres a no poder usarlo fuera del for?

si es asi si se puede, solo declaramos la variable fuera del foro y lo acumula.. bueno yo lo hacia asi en java y me funcionaba perfectamente ;)

Salu2
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: Novlucker en 9 Marzo 2010, 18:21 PM
Eso mismo, ... más que nada porque si lo pones dentro del for la declaras con cada llamada, así que nunca acumulas, por eso su problema

Estamos diciendo lo mismo :xD

Saludos
Título: Re: ¿Como hacer la sumaroria de los elementos de una lista?; Python
Publicado por: XD YO en 10 Marzo 2010, 04:41 AM
yo me perdi  XD

Ya sabia que era algún error tonto y simple, muchas gracias  ;-) ;D