Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Conversión de entero a cadena
#1
Mi nombre es Marcos estoy tratando de crear un programa sencillo para practicar pero tengo un problema:
Este es el código que escribí

Código:
num1 = int(input("ingresa un numero: "))
num2 = int(input("ingresa otro numero: "))
q = input("¿Que quieres hacer?: 1=sumar, 2=restar: ")

if int(q) == 1:
    resultado = num1 + num2
   print("Has seleccionado la suma: " + resultado)
elif int(q) == 2:
   resultado = num1 - num2
   print("Has seleccionado una resta: " + resultado)
 y esta es la salida

Código:
ingresa un numero: 2
ingresa otro numero: 2
¿Que quieres hacer?: 1=sumar, 2=restar: 1
Traceback (most recent call last):
  File "C:\Users\marcos\Desktop\Practicas python\pracica
7, in <module>
    print("Has seleccionado la suma: " + resultado)
TypeError: can only concatenate str (not "int") to str

Si yo cambio el int por str envés de hacer 2+2 = 4 hace 2+2 = 22, y no se como solucionarlo. Si me podrían ayudar estaría agradecido. Saludos
Responder
#2
Hola Marcos, bienvenido.

No hace falta que conviertas los números a una cadena, solo el resultado:

  1. if int(q) == 1:
  2. resultado = num1 + num2
  3. print("Has seleccionado la suma: " + str(resultado))
  4. elif int(q) == 2:
  5. resultado = num1 - num2
  6. print("Has seleccionado una resta: " + str(resultado))


O mejor:

  1. print("Has seleccionado la suma: ", resultado)


Esta sección es para presentaciones, voy a mover el tema a la sección general. Tenelo en cuenta para la próxima por favor.

Saludos
Responder
#3
Hola sigue concatenándome ambos numeros. Tendré en cuenta donde publico mis consultas la próxima ves.
Responder
#4
Basándome en el código que compartiste, funciona correctamente:

  1. num1 = int(input("ingresa un numero: "))
  2. num2 = int(input("ingresa otro numero: "))
  3. q = input("¿Que quieres hacer?: 1=sumar, 2=restar: ")
  4.  
  5. if int(q) == 1:
  6. resultado = num1 + num2
  7. print("Has seleccionado la suma: ", resultado)
  8. elif int(q) == 2:
  9. resultado = num1 - num2
  10. print("Has seleccionado una resta: ", resultado)
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)