elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a la Factorización De Semiprimos (RSA)


+  Foro de elhacker.net
|-+  Programación
| |-+  Python (Moderador: Danielㅤ)
| | |-+  [PYTHON] Tutorial de clases en Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [PYTHON] Tutorial de clases en Python  (Leído 1,877 veces)
TheCrimulo

Desconectado Desconectado

Mensajes: 11

Hoy es el día, de volver a dormir.


Ver Perfil
[PYTHON] Tutorial de clases en Python
« en: 9 Diciembre 2014, 18:09 pm »

Tener todo en un archivo es complicado, y más si es un proyecto largo, pero para algo estan las CLASES.

Para hacer una clase necesitamos un nivel de conocimiento medio/bajo, saber que hace def y un poco de lo demás.

Empezaremos creando una clase que cada vez que sea como un humano.

Código
  1. class Persona: #Siempre es necesario poner (self,opcional) en los parametros de la funcion.
  2.    def __init__(self,edad): #Esto se ejecutara cada vez que lo instanciemos.
  3.        self.edad = 19 #La edad base sera 19.
  4.    def hablar(self,texto):
  5.        print texto #Cuando se llame a la funcion, dira lo que pongamos.

Con esto haremos nuestra clase, pero ahora hay que instanciarla de esta manera:

Código
  1. Paco = Persona(36) #Ponemos los años, en este caso, 36.

Y podremos hacer cosas con ella, por ahora solo hablar, pero ya le añadiremos más.

Hablar:
Código
  1. Paco.hablar('Hola, me llamo Paco y tengo ', Paco.edad, 'años'

Ahora, haremos dos clases nuevas que harán lo mísmo que humano, pero con más funciones, a esto se le llama HERENCIA

Código
  1. class Programador(Persona): #Con (Persona) heredamos de ella, y si persona heredara de otra clase, Programador lo tendría, se llama Herencia Multiple
  2.    def programar(self,lenguaje):
  3.        print 'Voy a programar en ', lenguaje
  4. class Cocinero(Persona):
  5.    def cocinar(self,comida):
  6.        print 'Voy a cocinar ', comida
  7. class Estudioso(Cocinero,Programador): #Esto hereda de Cocinero y Programador a la vez, es una herencia multiple, pues estos dos heredan de Persona
  8.    def Estudiar(self,tema):
  9.        print 'Voy a estudiar ', tema

Ahora Cocinero y Programador heredan de Persona y Estudioso puede hacer lo que los dos hacen.

Instanciando:
Código
  1. Paco = Programador(36) #Como sigue heredando de Persona, hay que poner la edad
  2. Pedrito = Cocinero(31)
  3. Ricardo = Estudioso(26) #Ricardo hereda de Cocinero y de Programador, estos dos de Persona, como habreis adivinado, ¡La edad!

Ahora Pedrito puede hacer Pedrito.hablar('LALAL') y Pedrito.cocinar('Ensalada')
Paco, Paco.hablar('LELEL') y Paco.programar('C++')
Pero Ricardo puede hacer:
Ricardo.hablar('LULUL')
Ricardo.programar('Java')
Ricardo.cocinar('Pavo con verduritas')

Espero que les haya sido útil,
Un saludo,
TheCrimulo


En línea

Código
  1. print "¡Buenos días mundo!"
Código
  1. System.WriteLine("¡Callate!");
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
(Python)Existen ventanas de entrada y salida de datos en python « 1 2 »
Scripting
tonilogar 11 16,321 Último mensaje 29 Noviembre 2009, 00:49 am
por tonilogar
[Descarga] Tutorial de Python
Scripting
ZharkD 1 3,552 Último mensaje 2 Abril 2010, 22:19 pm
por MCKSys Argentina
[Python] ¿Por qué Python 2.7.3 admite la sintaxis de Python 3? « 1 2 »
Python
Yidu 10 11,286 Último mensaje 10 Febrero 2013, 21:46 pm
por Eleкtro
[Python/Tkinter](Kyurem v2.0)Consola de comandos hecha en python (Continuación)
Python
Príncipe_Azul 5 5,328 Último mensaje 16 Abril 2014, 11:19 am
por AdeLax
[AYUDA][PYTHON] Leer y guardar archivos .exe de forma hexadecimal en python???
Scripting
Noxware 3 5,815 Último mensaje 22 Agosto 2014, 09:33 am
por Eleкtro
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines