Python - Clases Abstractas con Métodos & Atributos

#Python - Clases métodos atributos #14 ejemplos de una clase con múltiples métodos y múltiples atributos en Python: #1. Clase "Persona" con atributos "nombre", "edad" y "profesión" y métodos "presentarse" y "trabajar". class Persona: def __init__(self, nombre, edad, profesion): self.nombre = nombre self.edad = edad self.profesion = profesion def presentarse(self): print("Hola, mi nombre es", self.nombre, "y tengo", self.edad, "años.") def trabajar(self): print("Soy", self.nombre, "y trabajo como", self.profesion) per1 = Persona("Juan",38,"Maestro") per2 = Persona("Marta",27,"Consejera") per1.presentarse(); per2.presentarse(); per1.trabajar(); per2.trabajar(); #2. Clase "Coche" con atributos "marca", "modelo" y "año" y métodos "acelerar" y "frenar". class Coche: def __init__(self, marca, modelo, ano): self.marca = marca self.modelo = modelo self.ano = ano def acelerar(self): print("El coche", self.marca, self.modelo, "está acelerando.") def frenar(self): print("El coche", self.marca, self.modelo, "está frenando.") coc1 = Coche("TOYOTA","COROLLA",2021) coc2 = Coche("KIA","RIO",2022) coc1.acelerar(); coc2.acelerar(); coc1.frenar(); coc2.frenar(); #3. Clase "Cuenta bancaria" con atributos "titular", "saldo" y "número de cuenta" y métodos "depositar" y "retirar". class CuentaBancaria: def __init__(self, titular, saldo, numero_cuenta): self.titular = titular self.saldo = saldo self.numero_cuenta = numero_cuenta def depositar(self, cantidad): self.saldo += cantidad print("Se han depositado", cantidad, "en la cuenta de", self.titular) def retirar(self, cantidad): if cantidad > self.saldo: print("No hay suficiente saldo en la cuenta de", self.titular) else: self.saldo -= cantidad print("Se han retirado", cantidad, "de la cuenta de", self.titular) CB1 = CuentaBancaria("Vince",350,982021) CB2 = CuentaBancaria("Katia",230,722022) CB1.depositar(80); CB2.depositar(60); CB1.retirar(40); CB2.retirar(30); #4. Clase "Animal" con atributos "especie", "edad" y "nombre" y métodos "comer" y "dormir". class Animal: def __init__(self, especie, edad, nombre): self.especie = especie self.edad = edad self.nombre = nombre def comer(self): print(self.nombre, "está comiendo.") def dormir(self): print(self.nombre, "está durmiendo.") ani1 = Animal("Puma",7,"Perdita") ani2 = Animal("León Africano",8,"Casper") ani1.comer(); ani2.comer(); ani1.dormir(); ani2.dormir(); #5. Clase "Libro" con atributos "título", "autor" y "año de publicación" y métodos "leer" y "prestar". class Libro: def __init__(self, titulo, autor, ano_publicacion): self.titulo = titulo self.autor = autor self.ano_publicacion = ano_publicacion def leer(self): print("Estoy leyendo el libro", self.titulo, "de", self.autor) def prestar(self, persona): print("El libro", self.titulo, "ha sido prestado a", persona) lib1 = Libro("Python para Principiantes","",2020) lib2 = Libro("Curso intensivo de Python","Eric Matthes",2021) lib1.leer(); lib2.leer(); lib1.prestar("Arlene"); lib2.prestar("Bret"); #6. Clase "Película" con atributos "título", "director" y "año de estreno" y métodos "ver" y "recomendar". class Pelicula: def __init__(self, titulo, director, ano_estreno): self.titulo = titulo self.director = director self.ano_estreno = ano_estreno def ver(self): print("Estoy viendo la película ", self.titulo, "dirigida por ", self.director) def recomendar(self, persona): print("La película ", self.titulo, "ha sido recomendada a ", persona) pel1 = Libro("Python para Principiantes","",2020) pel2 = Libro("Curso intensivo de Python","Eric Matthes",2021) pel1.leer(); pel2.leer(); pel1.prestar("Arlene"); pel2.prestar("Bret"); #7. Clase "Restaurante" con atributos "nombre", "tipo de comida" y "ubicación" y métodos "reservar" y "ordenar". class Restaurante: def __init__(self, nombre, tipo_comida, ubicacion): self.nombre = nombre self.tipo_comida = tipo_comida self.ubicacion = ubicacion def reservar(self, personas): print("Se ha reservado una mesa para", personas, "en el restaurante", self.nombre, "ubicado en", self.ubicacion) def ordenar(self, plato): print("Se ha ordenado el plato", plato, "en el restaurante", self.nombre) res1 = Restaurante("Pizza Libre","Pizza","Jayuya") res2 = Restaurante("Tacos Libre","Tacos","Caguas") res1.reservar(3); res2.reservar(4); res1.ordenar("Calzón"); res2.ordenar("Burrito"); #8. Clase "Estudiante" con atributos "nombre", "edad" y "carrera" y métodos "estudiar" y "socializar". class Estudiante: def __init__(self, nombre, edad, carrera): self.nombre = nombre self.edad = edad self.carrera = carrera def estudiar(self): print(self.nombre, "está estudiando", self.carrera) def socializar(self): print(self.nombre, "está socializando con sus compañeros de clase.") est1 = Estudiante("Franklin",13,"Ciencias") est2 = Estudiante("Idalia",15,"Artes") est1.estudiar(); est2.estudiar(); est1.socializar(); est2.socializar(); #9. Clase "Empleado" con atributos "nombre", "puesto" y "salario" y métodos "trabajar" y "pedir aumento". class Empleado: def __init__(self, nombre, puesto, salario): self.nombre = nombre self.puesto = puesto self.salario = salario def trabajar(self): print(self.nombre, "está trabajando como", self.puesto) def pedir_aumento(self, cantidad): self.salario += cantidad print(self.nombre, "ha recibido un aumento de", cantidad, "y ahora gana", self.salario) emp1 = Empleado("Emily","Ciencias",13) emp2 = Empleado("Don","Artes",15) emp1.trabajar(); emp2.trabajar(); emp1.pedir_aumento(32); emp2.pedir_aumento(25); #10. Clase "Producto" con atributos "nombre", "precio" y "cantidad en stock" y métodos "vender" y "reabastecer". class Producto: def __init__(self, nombre, precio, cantidad_stock): self.nombre = nombre self.precio = precio self.cantidad_stock = cantidad_stock def vender(self, cantidad): if cantidad > self.cantidad_stock: print("No hay suficiente stock de", self.nombre) else: self.cantidad_stock -= cantidad print("Se han vendido", cantidad, "de", self.nombre) def reabastecer(self, cantidad): self.cantidad_stock += cantidad print("Se han reabastecido", cantidad, "de", self.nombre) emp1 = Producto("Compás",4.1,9) emp2 = Producto("Transportador",4.95,11) emp1.vender(5); emp2.vender(15); emp1.reabastecer(50); emp2.reabastecer(50); #11. Clase "Músico" con atributos "nombre", "instrumento" y "género musical" y métodos "tocar" y "grabar". class Musico: def __init__(self, nombre, instrumento, genero_musical): self.nombre = nombre self.instrumento = instrumento self.genero_musical = genero_musical def tocar(self): print(self.nombre, "está tocando el", self.instrumento) def grabar(self): print(self.nombre, "está grabando una canción de", self.genero_musical) mus1 = Musico("Ricardo","guitarra","clásica") mus2 = Musico("Sofía","cuatro","navidad") mus1.tocar(); mus2.tocar(); mus1.grabar(); mus2.grabar(); #12. Clase "Tienda" con atributos "nombre", "tipo de productos" y "ubicación" y métodos "vender" y "reabastecer". class Tienda: def __init__(self, nombre, tipo_productos, ubicacion): self.nombre = nombre self.tipo_productos = tipo_productos self.ubicacion = ubicacion def vender(self, producto): print("Se ha vendido un", producto, "en la tienda", self.nombre) def reabastecer(self, producto, cantidad): print("Se han reabastecido", cantidad, "de", producto, "en la tienda", self.nombre) tie1 = Tienda("Andrea Helados","Helados","Lares") tie2 = Tienda("Carlos Frappe","Frappe","Yauco") tie1.vender("Fresa"); tie2.vender("Coco"); tie1.reabastecer("Fresa",4); tie2.reabastecer("Coco",3); #13. Clase "Avión" con atributos "modelo", "año de fabricación" y "capacidad de pasajeros" y métodos "despegar" y "aterrizar". class Avion: def __init__(self, modelo, ano_fabricacion, capacidad_pasajeros): self.modelo = modelo self.ano_fabricacion = ano_fabricacion self.capacidad_pasajeros = capacidad_pasajeros def despegar(self): print("El avión", self.modelo, "está despegando.") def aterrizar(self): print("El avión", self.modelo, "está aterrizando.") avi1 = Avion("Airbus A700",2007,480) avi2 = Avion("Airbus A380",2011,850) avi1.despegar(); avi2.despegar(); avi1.aterrizar(); avi2.aterrizar(); #14. Clase "Casa" con atributos "ubicación", "número de habitaciones" y "precio" y métodos "vender" y "alquilar". class Casa: def __init__(self, ubicacion, num_habitaciones, precio): self.ubicacion = ubicacion self.num_habitaciones = num_habitaciones self.precio = precio def vender(self): print("La casa en", self.ubicacion, "se ha vendido por", self.precio) def alquilar(self, meses): total = self.precio * meses print("La casa en", self.ubicacion, "se ha alquilado por", meses, "meses por un total de", total, "dólares.") cas1 = Casa("Mayaguez",4,970) cas2 = Casa("Arecibo",5,1100) cas1.vender(); cas2.vender(); cas1.alquilar(8); cas2.alquilar(6);

Geogebra Python