Introducción a la programación orientada a objetos en Python
George Boorman
Curriculum Manager, DataCamp
class Employee:
def __init__(self, name, salary):
self.name = name
self.salary = salary
emp1 = Employee("Teo Mille", 50000)
emp2 = Employee("Marta Popov", 65000)
name y salary son propios de cada objetoself asigna al objeto
class
class Employee: # Define un atributo de clase # Sin sintaxis self. MIN_SALARY = 30000def __init__(self, name, salary): self.name = name # Usa el nombre de la clase # para acceder al atributo de clase if salary >= Employee.MIN_SALARY: self.salary = salaryelse: self.salary = Employee.MIN_SALARY
MIN_SALARY se comparte entre todas las instanciasself para definir un atributo de claseClassName.ATTR_NAME para acceder al valor del atributo de claseclass Employee: # Define un atributo de clase MIN_SALARY = 30000def __init__(self, name, salary): self.name = name # Usa el nombre de la clase # para acceder al atributo de clase if salary >= Employee.MIN_SALARY: self.salary = salary else: self.salary = Employee.MIN_SALARY
emp1 = Employee("John", 40000)
print(emp1.MIN_SALARY)
30000
emp2 = Employee("Jane", 60000)
print(emp2.MIN_SALARY)
30000
emp1 = Employee("John", 40000) emp2 = Employee("Jane", 60000)# Actualiza MIN_SALARY de emp1 emp1.MIN_SALARY = 50000# Imprime MIN_SALARY para ambos empleados print(emp1.MIN_SALARY) print(emp2.MIN_SALARY)
50000
30000
MIN_SALARY se crea en la definición de la clase
MIN_SALARY de un objeto no cambia el valor en la clase
host, port en una clase DatabaseIntroducción a la programación orientada a objetos en Python