Skip to content

Commit 63ec128

Browse files
committed
Añadir ejercicio 042-understanding_classes
1 parent b597f4f commit 63ec128

File tree

3 files changed

+89
-0
lines changed

3 files changed

+89
-0
lines changed
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# `042` understanding classes
2+
3+
En Python, una clase es una estructura que te permite organizar y encapsular datos y funcionalidades relacionadas. Las clases son una característica fundamental de la programación orientada a objetos (OOP), un paradigma de programación que utiliza objetos para modelar y organizar el código.
4+
5+
En términos simples, una clase es como un plano o un molde para crear objetos. Un objeto es una instancia específica de una clase que tiene atributos (datos) y métodos (funciones) asociados. Los atributos representan características del objeto, y los métodos representan las acciones que el objeto puede realizar.
6+
7+
## 📎 Ejemplo:
8+
9+
```py
10+
class Student:
11+
def __init__(self, name, age, grade): # Estos son sus atributos
12+
self.name = name
13+
self.age = age
14+
self.grade = grade
15+
16+
def introduce(self): # Esto es un método
17+
print(f"Hello! I am {self.name}, I am {self.age} years old, and my current grade is {self.grade}.")
18+
19+
def study(self, hours): # Esto es otro método
20+
print(f"{self.name} is studying for {hours} hours.")
21+
self.grade += hours * 0.5
22+
print(f"After studying, {self.name}'s new grade is {self.grade}.")
23+
24+
student1 = Student("Ana", 20, 80)
25+
26+
student1.introduce()
27+
student1.study(3)
28+
```
29+
30+
En este código:
31+
32+
+ La clase `Student` tiene un método `__init__` para inicializar los atributos *name*, *age* y *grade* del estudiante.
33+
+ `introduce` es un método que imprime un mensaje presentando al estudiante.
34+
+ `study` es un método que simula el acto de estudiar y actualiza la nota del estudiante.
35+
36+
## 📝 Instrucciones:
37+
38+
1. Para completar este ejercicio, copia el código proporcionado en el ejemplo y pégalo en tu archivo `app.py`. Ejecuta el código y prueba su funcionalidad. Experimenta con modificar diferentes aspectos del código para observar cómo se comporta. Este enfoque práctico te ayudará a comprender la estructura y el comportamiento de la clase `Student`. Una vez que te hayas familiarizado con el código y sus efectos, siéntete libre de pasar al siguiente ejercicio.
39+
40+
## 💡 Pistas:
41+
42+
+ Lee un poco sobre la función interna `__init__`: https://www.w3schools.com/python/gloss_python_class_init.asp
43+
44+
+ Si no comprendes la funcionalidad del parámetro `self` en el código que acabas de copiar, tómate un momento para visitar el siguiente enlace donde encontrarás una explicación detallada: [Entendiendo el parámetro 'self'](https://www.geeksforgeeks.org/self-in-python-class/)
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
# `042` understanding classes
2+
3+
In Python, a class is a structure that allows you to organize and encapsulate related data and functionalities. Classes are a fundamental feature of object-oriented programming (OOP), a programming paradigm that uses objects to model and organize code.
4+
5+
In simple terms, a class is like a blueprint or a template for creating objects. An object is a specific instance of a class that has associated attributes (data) and methods (functions). Attributes represent the characteristics of the object, and methods represent the actions that the object can perform.
6+
7+
## 📎 Example:
8+
9+
```py
10+
class Student:
11+
def __init__(self, name, age, grade): # These are its attributes
12+
self.name = name
13+
self.age = age
14+
self.grade = grade
15+
16+
def introduce(self): # This is a method
17+
print(f"Hello! I am {self.name}, I am {self.age} years old, and my current grade is {self.grade}.")
18+
19+
def study(self, hours): # This is another method
20+
print(f"{self.name} is studying for {hours} hours.")
21+
self.grade += hours * 0.5
22+
print(f"After studying, {self.name}'s new grade is {self.grade}.")
23+
24+
student1 = Student("Ana", 20, 80)
25+
26+
student1.introduce()
27+
student1.study(3)
28+
```
29+
30+
In this code:
31+
32+
+ The `Student` class has an `__init__` method to initialize the attributes *name*, *age*, and *grade* of the student.
33+
+ `introduce` is a method that prints a message introducing the student.
34+
+ `study` is a method that simulates the act of studying and updates the student's grade.
35+
36+
## 📝 Instructions:
37+
38+
1. To complete this exercise, copy the provided code from the example and paste it into your `app.py` file. Execute the code and test its functionality. Experiment with modifying different aspects of the code to observe how it behaves. This hands-on approach will help you understand the structure and behavior of the `Student` class. Once you have familiarized yourself with the code and its effects, feel free to proceed to the next exercise.
39+
40+
## 💡 Hints:
41+
42+
+ Read about the `__init__` built-in function: https://www.w3schools.com/python/gloss_python_class_init.asp
43+
44+
+ If you find yourself wondering about the role of the `self` keyword in Python classes, take a moment to visit the following link for a detailed explanation: [Understanding the 'self' Parameter](https://www.geeksforgeeks.org/self-in-python-class/)
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
# Your code here

0 commit comments

Comments
 (0)