Tutorial de Python

Pitón INICIO Introducción a Python Python Empezar Sintaxis de Python Comentarios de Python Variables de Python Tipos de datos de Python Números de Python Fundición de Python Cadenas de pitón Booleanos de Python Operadores de Python Listas de Python Tuplas de Python Conjuntos de Python Diccionarios de Python Python si... si no Ciclos while de Python Python para bucles Funciones de Python pitón lambda Matrices de Python Clases/Objetos de Python Herencia de Python Iteradores de Python Alcance de Python Módulos de Python Fechas de Python Python Matemáticas PythonJSON Python expresión regular PIP de Python Prueba Python... Excepto Entrada de usuario de Python Formato de cadenas de Python

Manejo de archivos

Manejo de archivos de Python Python Leer archivos Python escribir/crear archivos Python Eliminar archivos

Módulos de Python

Tutorial NumPy Pandas Tutorial SciPy Tutorial

Matplotlib de Python

Introducción a Matplotlib Matplotlib Comenzar Pyplot de Matplotlib Trazado de Matplotlib Marcadores Matplotlib Línea Matplotlib Etiquetas Matplotlib Cuadrícula Matplotlib Subparcelas de Matplotlib Dispersión de Matplotlib Barras Matplotlib Histogramas de Matplotlib Gráficos circulares de Matplotlib

Aprendizaje automático

Empezando Media Mediana Moda Desviación Estándar percentil Distribución de datos Distribución normal de datos Gráfico de dispersión Regresión lineal Regresión polinomial Regresión múltiple Escala Entrenar/Prueba Árbol de decisión

pitón mysql

MySQL Empezar Crear base de datos MySQL Crear tabla MySQL Insertar MySQL Seleccionar MySQL mysql donde MySQL Ordenar por MySQL Eliminar Tabla desplegable de MySQL Actualización de MySQL Límite MySQL unirse a mysql

Python MongoDB

MongoDB Empezar MongoDB Crear base de datos MongoDB Crear colección Insertar MongoDB MongoDB Buscar Consulta MongoDB MongoDB Ordenar Eliminar MongoDB Colección de eliminación de MongoDB Actualización de MongoDB Límite de MongoDB

Referencia de Python

Descripción general de Python Funciones integradas de Python Métodos de cadenas de Python Métodos de lista de Python Métodos de diccionario de Python Métodos de tupla de Python Métodos de conjuntos de Python Métodos de archivos de Python Palabras clave de Python Excepciones de Python Glosario de Python

Referencia del módulo

Módulo aleatorio Módulo de Solicitudes Módulo de estadísticas Módulo Matemático cMódulo Matemático

Python Cómo

Eliminar duplicados de lista Invertir una cadena Añadir dos números

Ejemplos de Python

Ejemplos de Python Compilador de Python Ejercicios de pitón Cuestionario de Python Certificado de Python

Herencia de Python


Herencia de Python

La herencia nos permite definir una clase que hereda todos los métodos y propiedades de otra clase.

La clase principal es la clase de la que se hereda, también llamada clase base.

La clase secundaria es la clase que hereda de otra clase, también llamada clase derivada.


Crear una clase principal

Cualquier clase puede ser una clase principal, por lo que la sintaxis es la misma que para crear cualquier otra clase:

Ejemplo

Cree una clase llamada Person, con propiedades y un firstnamemétodo :lastnameprintname

class Person:
  def __init__(self, fname, lname):
    self.firstname = fname
    self.lastname = lname

  def printname(self):
    print(self.firstname, self.lastname)

#Use the Person class to create an object, and then execute the printname method:

x = Person("John", "Doe")
x.printname()

Crear una clase secundaria

Para crear una clase que herede la funcionalidad de otra clase, envíe la clase principal como parámetro al crear la clase secundaria:

Ejemplo

Cree una clase llamada Student, que heredará las propiedades y métodos de la Personclase:

class Student(Person):
  pass

Nota: utilice la pass palabra clave cuando no desee agregar otras propiedades o métodos a la clase.

Ahora la clase Estudiante tiene las mismas propiedades y métodos que la clase Persona.

Ejemplo

Use la Studentclase para crear un objeto y luego ejecute el printnamemétodo:

x = Student("Mike", "Olsen")
x.printname()


Agregue la función __init__()

Hasta ahora hemos creado una clase secundaria que hereda las propiedades y métodos de su padre.

Queremos agregar la __init__()función a la clase secundaria (en lugar de la passpalabra clave).

Nota: La __init__()función se llama automáticamente cada vez que la clase se usa para crear un nuevo objeto.

Ejemplo

Agregue la __init__()función a la Studentclase:

class Student(Person):
  def __init__(self, fname, lname):
    #add properties etc.

Cuando agrega la __init__()función, la clase secundaria ya no heredará la __init__()función principal.

Nota: La __init__() función del hijo anula la herencia de la __init__()función del padre.

Para mantener la herencia de la __init__() función principal, agregue una llamada a la __init__()función principal:

Ejemplo

class Student(Person):
  def __init__(self, fname, lname):
    Person.__init__(self, fname, lname)

Ahora hemos agregado con éxito la función __init__() y conservamos la herencia de la clase principal, y estamos listos para agregar funcionalidad en la __init__()función.


Usa la función super()

Python también tiene una super()función que hará que la clase secundaria herede todos los métodos y propiedades de su padre:

Ejemplo

class Student(Person):
  def __init__(self, fname, lname):
    super().__init__(fname, lname)

Al usar la super()función, no tiene que usar el nombre del elemento principal, automáticamente heredará los métodos y propiedades de su elemento principal.


Agregar propiedades

Ejemplo

Agregue una propiedad llamada graduationyeara la Studentclase:

class Student(Person):
  def __init__(self, fname, lname):
    super().__init__(fname, lname)
    self.graduationyear = 2019

En el ejemplo a continuación, el año 2019debe ser una variable y pasarse a la Studentclase al crear objetos de estudiante. Para hacerlo, agregue otro parámetro en la función __init__():

Ejemplo

Agregue un yearparámetro y pase el año correcto al crear objetos:

class Student(Person):
  def __init__(self, fname, lname, year):
    super().__init__(fname, lname)
    self.graduationyear = year

x = Student("Mike", "Olsen", 2019)

Añadir métodos

Ejemplo

Agregue un método llamado welcomea la Studentclase:

class Student(Person):
  def __init__(self, fname, lname, year):
    super().__init__(fname, lname)
    self.graduationyear = year

  def welcome(self):
    print("Welcome", self.firstname, self.lastname, "to the class of", self.graduationyear)

Si agrega un método en la clase secundaria con el mismo nombre que una función en la clase principal, se anulará la herencia del método principal.


Ponte a prueba con ejercicios

Ejercicio:

¿Cuál es la sintaxis correcta para crear una clase llamada Estudiante que heredará propiedades y métodos de una clase llamada Persona?

class :