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:

Código:
if int(q) == 1:
    resultado = num1 + num2
    print("Has seleccionado la suma: " + str(resultado))
elif int(q) == 2:
   resultado = num1 - num2
   print("Has seleccionado una resta: " + str(resultado))

O mejor:

Código:
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
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!

También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
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:

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)
¡No te pierdas nuestro curso oficial en Udemy para aprender Python, bases de datos SQL, orientación a objetos, tkinter y mucho más!

También ofrecemos consultoría profesional de desarrollo en Python para personas y empresas.
Responder


Salto de foro:


Usuarios navegando en este tema: 2 invitado(s)