Está en la página 1de 2

Datos estructurados: Clases (Introducción POO)

Lenguaje de Programación 1

Clases Las clases proveen una forma de empaquetar datos y funcionalidad


juntos. Al crear una nueva clase, se crea un nuevo tipo de objeto, permitiendo
crear nuevas instancias de ese tipo. Cada instancia de clase puede tener atributos
adjuntos para mantener su estado. Las instancias de clase también pueden tener
métodos (definidos por su clase) para modificar su estado.
El código mostrado a continuación crea una clase de nombre Persona, con
un método constructor llamado __ int __
class Persona:
def __init__(self, nombre, dni, edad):
self.nombre = nombre
self.dni = dni
self.edad = edad

Maria = Persona("María Pérez", "89456312", 20)


print(Maria.edad)
print(Maria.dni)
Juan = Persona("Juan López", "97586012", 21)
Pedro = Persona("Pedro García Pérez", "78963526", 19)
estudiantes = [Maria, Juan, Pedro]

print(Pedro.edad)
print(estudiantes[2].edad)

for estudiante in estudiantes:


print (estudiante.dni)

for i in range(len(estudiantes)):
print (estudiantes[i].dni)
Definiendo a la clase Persona el método: iniciales
def iniciales(self):
cadena = ’’
for caracter in self.nombre:
if caracter >= ’A’ and caracter <= ’Z’:
cadena = cadena + caracter + ’. ’
return cadena

1
Definiendo a la clase Persona el método: __str__
def __str__(self):
cadena = ’Nombre: {0}\n’.format(self.nombre)
cadena = cadena + ’Dni: {0}\n’.format(self.dni)
cadena = cadena + ’Edad: {0}\n’.format(self.edad)
return cadena
Modifica el programa del ejercicio anterior enriqueciendo el tipo de datos
Persona con un nuevo campo: el sexo, que codificaremos con una letra (M para
mujer y H para hombre). Añade al método __str__ lo necesario para que
imprima en pantalla también cuál es el sexo de la persona. Agregando un
método capaz de generar la copia de un objeto.
def copia(self):
nuevo = Persona(self.nombre,self.dni,self.edad)
return nuevo

También podría gustarte