Python - CLASES EN PYTHON

 
Vista:

CLASES EN PYTHON

Publicado por GUSTAVO ADOLFO (3 intervenciones) el 04/06/2024 18:55:31
Hola todos, estoy introduciéndome al tema de clases en Python y tengo problema con esta sencilla clase de suma dos número que no devuelve nada en pantalla, me pueden orientar por favor


class SumadorDeNumeros:
def __init__(self):
self.num1 = float(input("Ingrese el primer número: "))
self.num2 = float(input("Ingrese el segundo número: "))

def sumar(self):
resultado = self.num1 + self.num2
return resultado
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Dennis

CLASES EN PYTHON

Publicado por Dennis (25 intervenciones) el 05/06/2024 02:01:33
Saludos, seguramente no te sale nada porque no lo estas imprimiendo, mira aqui el codigo, lo he mejorado algo:
1
2
3
4
5
6
7
8
9
10
class SumadorDeNumeros:
    def __init__(self, num1: float, num2: float):
        self.num1 = num1
        self.num2 = num2
 
    def sumar(self) -> float:
        return self.num1 + self.num2
 
suma = SumadorDeNumeros(12.3, 5.2)
print(suma.sumar())

Te recomiendo que esto:
1
2
self.num1 = float(input("Ingrese el primer número: "))
self.num2 = float(input("Ingrese el segundo número: "))
No lo uses mucho, no es buena práctica por temas de control del codigo, no es que no funcione, pero no es recomendable.
Espero que te ayude.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CLASES EN PYTHON

Publicado por GUSTAVO ADOLFO (3 intervenciones) el 05/06/2024 17:11:38
Te agradezco mucho por la sugerencia y la observación del print. En este caso si yo deseo que lea los dos numeros a sumar desde el teclado, eso es lo que deseo hacer, es posible?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Dennis

CLASES EN PYTHON

Publicado por Dennis (25 intervenciones) el 06/06/2024 00:58:30
Según tu pregunta, porque lo que entendí, para que lea los números desde el teclado, se puede hacer de esta forma:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class SumadorDeNumeros:
    def __init__(self, num1: float, num2: float):
        self.num1 = num1
        self.num2 = num2
 
    def sumar(self) -> float:
        return self.num1 + self.num2
 
# Se le pone float para que convierta la entrada en un numero flotante
# porque seria solo un string lo que introduces aunque sean numeros
num1 = float(input('Numero 1: '))
num2 = float(input('Numero 2: '))
 
suma = SumadorDeNumeros(num1, num2)
 
print(suma.sumar())

Tambien puedes hacerlo dentro del constructor:
1
2
3
4
SumadorDeNumeros(
    float(input('Numero 1: ')),
    float(input('Numero 2: '))
)
Sin tener que usar esto:
1
2
num1 = float(input('Numero 1: '))
num2 = float(input('Numero 2: '))
y dará el mismo resultado, el problema que en un proyecto, es más complejo de esta forma validar los datos, por eso se crean fuera y luego se le pasa al constructor cuando están correctos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

CLASES EN PYTHON

Publicado por GUSTAVO ADOLFO (3 intervenciones) el 06/06/2024 16:47:03
Exacto eso necesitaba, agradezco mucho tu ayuda. Dios te bendiga por compartir tu conocimiento y experiencia, esto me servira como punto de partida a experimentar y aprender mas de Python
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar