Foros del Web » Programando para Internet » Python »

Sumar variables con valor introducido por raw_input()

Estas en el tema de Sumar variables con valor introducido por raw_input() en el foro de Python en Foros del Web. Pues quiero sumar 2 variables cuyos valores se introducen con raw_input es este plan: A = raw_input() B = raw_input() C = A + B ...
  #1 (permalink)  
Antiguo 08/07/2008, 08:19
 
Fecha de Ingreso: mayo-2008
Mensajes: 38
Antigüedad: 16 años, 5 meses
Puntos: 0
Sumar variables con valor introducido por raw_input()

Pues quiero sumar 2 variables cuyos valores se introducen con raw_input es este plan:

A = raw_input()
B = raw_input()
C = A + B

pero cuando sumo a y b lo toma como texto y en vez de sumar 2 + 3 = 5 lo que hace es 2 + 3 = 23

como puedo solucionar esto?
  #2 (permalink)  
Antiguo 08/07/2008, 13:39
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Exclamación Respuesta: Sumar variables con valor introducido por raw_input()

Cita:
Iniciado por Lolerman Ver Mensaje
Pues quiero sumar 2 variables cuyos valores se introducen con raw_input es este plan:

A = raw_input()
B = raw_input()
C = A + B

pero cuando sumo a y b lo toma como texto y en vez de sumar 2 + 3 = 5 lo que hace es 2 + 3 = 23

como puedo solucionar esto?
Pues debes convertir a Números. Así:
Código:
A = raw_input()
B = raw_input()
C = int(A) + int(B)
Saludos
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 09/07/2008, 02:15
 
Fecha de Ingreso: mayo-2008
Mensajes: 38
Antigüedad: 16 años, 5 meses
Puntos: 0
De acuerdo Respuesta: Sumar variables con valor introducido por raw_input()

Ya lo he probado, gracias david, en el manual que me he bajado no decia nada de como definir las variables como numericas tendre que cambiar
  #4 (permalink)  
Antiguo 09/07/2008, 09:43
AlvaroG
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Sumar variables con valor introducido por raw_input()

No estás definiendo la variable como numérica, lo que sucede es que lo que devuelve raw_input es una cadena de caracteres.

Entonces, para que sume los valores en vez de unir las cadenas, tenés que considerar el valor numérico de esas cadenas, y para eso le aplicás el int()

Basicamente, si

a = "12"
(tipo de a = cadena)

entonces

valorEnterodeA = int(a) = 12
(tipo de valorEnterodeA = entero)


Saludos.
  #5 (permalink)  
Antiguo 14/07/2008, 03:22
 
Fecha de Ingreso: julio-2008
Mensajes: 15
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Sumar variables con valor introducido por raw_input()

Creo que hay una funcion input() para pillar solo numeros
  #6 (permalink)  
Antiguo 24/07/2008, 18:32
 
Fecha de Ingreso: julio-2008
Mensajes: 2
Antigüedad: 16 años, 4 meses
Puntos: 0
Respuesta: Sumar variables con valor introducido por raw_input()

Lo captado con raw_input siempre será una cadena. Para numeros enteros usa input:

A=input()
B=input()
C=A+C
print C


Input tambien acepta listas y datos que no son numeros. Puedes entrar en vez de un solo numero, varios separados por una coma:
34,5
O puedes entrar cadenas (no te olvides de las comillas):
'cadena','otra_cadena'


En definitiva, input() siempre intentara averiguar que tipo de datos le entras. Como curiosidad tambien calcula, por ello puedes entrar directamente 3+2, y te dara como resultado 5:

>>> z=input()
2+3
>>>print z
5
  #7 (permalink)  
Antiguo 25/07/2008, 09:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 7 meses
Puntos: 839
Exclamación Respuesta: Sumar variables con valor introducido por raw_input()

Ese uso de input() es válido para versiones anteriores de Python, pero hay que tomar en cuenta que en la versión 3.0 raw_input() es sustituída por input() así que devuelve una cadena y no el tipo de dato introducido.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:22.