elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).  (Leído 8,775 veces)
S3kh

Desconectado Desconectado

Mensajes: 58


Ver Perfil
[Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
« en: 3 Septiembre 2011, 23:15 pm »

 Estoy intentando hacer una función en la cuál se le pasa una cadena como parámetro, y obtiene el valor numérico de cada carácter, y los suma todos. Intenté con for y while, pero no le encuentro la vuelta. Alguien me podría decir si hay una función que haga esto?
          
edit: Que idiotez la mía olvidé decir que trabajo en Python.


« Última modificación: 4 Septiembre 2011, 00:50 am por S3kh » En línea

criskapunk

Desconectado Desconectado

Mensajes: 277



Ver Perfil
Re: Sumar valor numérico de cada carácter de una cadena.
« Respuesta #1 en: 4 Septiembre 2011, 00:32 am »

Con valor numérico te referís a por ejemplo a=1, b=2... etc? O al valor ascii de cada carácter?



 


En línea

WaAYa HaCK

Desconectado Desconectado

Mensajes: 292


Arduino, Android and music


Ver Perfil
Re: Sumar valor numérico de cada carácter de una cadena.
« Respuesta #2 en: 4 Septiembre 2011, 00:34 am »

Con qué lenguaje?
En línea

La cacatúa yoyó es nueva en el zoo!
S3kh

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [Python]Sumar valor numérico de cada carácter de una cadena.
« Respuesta #3 en: 4 Septiembre 2011, 00:50 am »

 Es en Python, y hablo del código ASCII. Estuve intentando muchas cosas. Me da cualquier resultado, o no me da nada. No le encuentro la forma de hacerlo andar, en si la lista de pasos que hize es correcta, pero le estoy fallando en el código. Alguien se le ocurre una manera? No es necesario ningún código, sólo que estoy estancado.
 Cualquier ayuda sirve. Gracias.
En línea

criskapunk

Desconectado Desconectado

Mensajes: 277



Ver Perfil
Re: [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
« Respuesta #4 en: 4 Septiembre 2011, 00:57 am »

Publica el código que llevas hecho así te podemos ayudar mejor.
Igualmente para obtener el valor ASCII de un carácter disponés de la función Ord().

http://docs.python.org/library/functions.html#ord

Un saludo.
En línea

S3kh

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
« Respuesta #5 en: 4 Septiembre 2011, 01:06 am »

Es parte de otro código, pero que no viene al caso. Es experimental igual, y hay cosas que le faltan porque las estoy borrando y sacando:

Código:
class Jzk:

        def __init__(self, Llave):
                self.Llave = Llave
        def ObtenerValor(self):
                Contador      = 0
                for Caracter in self.Llave:
                        suma1 = ord(Llave[Contador]) + ord(self.Llave[Contador+1])
                        Contador += 1
                        suma  = suma1 + ord(Llave[Contador+2]
                return suma

Ya se que está mal programado y todo, es que estoy aprendiendo y experimento jeje.
 Mi razonamiento es que inicie un contador a 0 por cada caracter haga esto:
sume cadena[contador] + cadena[contador+1[ (Por ejemplo la cadena ABCD suma A + B). El resultado le suma cadena[contador+2], esto sería 0+2, que sería el 3er elemento, y así sucesivamente.
 Ya se que seguro me estoy pasando algo por alto, y que es un desastre el código jeje, pero bueno de los errores y peteadas se aprenden jeje
 Gracias por la ayuda n.n
En línea

Jirp96

Desconectado Desconectado

Mensajes: 46


Ver Perfil
Re: [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
« Respuesta #6 en: 4 Septiembre 2011, 02:22 am »

Hola!
Soy medio novato en el tema de la programacion y con python, pero(en mi opinion) deberias:
->Usar un bucle for en la variable "Llave" para ir recorriendo cada caracter
->Sumar(en un contador) el valor ascii de cada caracter(usando la funcion ord() que ya te comentaron)
->Luego hacer lo que necesites con ese valor(retornarlo, presentarlo por pantalla, etc)

Aca dejo el codigo(creo que no es "hacer la tarea", si es asi, pido disculpas y lo borro :P), y creo hace lo que pides, si no es asi, supongo que te entendi mal  :silbar:
Código
  1. class Jzk:
  2.  
  3.        def __init__(self, Llave):
  4.                self.Llave = Llave
  5.        def ObtenerValor(self):
  6.                tmpSuma = 0 #variable contador
  7.                for caracter in self.LLave: #Por cada caracter en "LLave"
  8. tmpSuma += ord(caracter) #Aumentamos el valor de tmpSuma en el valor ascii del caracter "actual"
  9.                return tmpSuma

Saludos!

En línea

S3kh

Desconectado Desconectado

Mensajes: 58


Ver Perfil
Re: [Python]Sumar valor numérico de cada carácter de una cadena(ASCII).
« Respuesta #7 en: 4 Septiembre 2011, 03:57 am »

 Ah, y yo complicándome la vida. Lo peor es que eso lo pensé. Como se nota mi novatez jajaj. Gracias por la ayuda, y no, no fue hacer la tarea porque no lo voy a copiar  jeje. Me sirvió de mucho para orientarme, voy a implementarlo de otra forma. Te agradezco, entendí un poco mejor como es la onda jaja. Muchísimas gracias . :)
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines