Python tiene un conjunto de reglas y convenciones que utilizamos al nombrar nuestras clases, métodos y atributos. Estas convenciones son importantes porque aseguran consistencia en el código que escribes, haciéndolo más fácil de leer y entender. También es una buena práctica profesional adherirse a estas convenciones.
Nombres de Clases
En Python, los nombres de las clases siguen la convención CapWords, también conocida como PascalCase. En este estilo, la primera letra de cada palabra se escribe en mayúscula y no hay guiones bajos (_) entre palabras:
class MyClass: # El nombre de la clase empieza con mayúscula
pass # Usamos "pass" cuando no queremos que la clase haga nada
El término PascalCase se originó del lenguaje de programación Pascal, atribuido a su convención de escritura. CapWords es el término utilizado en la guía de estilo oficial de Python (PEP 8), y es esencialmente lo mismo que PascalCase.
Nombres de Métodos
Los nombres de los métodos deben estar en minúsculas, con palabras separadas por guiones bajos para mejorar la legibilidad. Esto también se conoce como snake_case. Aquí tienes un ejemplo:
class MyClass:
def my_method(self): # El nombre del método está en minúsculas
pass # Donde las palabras se separan por guiones bajos
Nombres de Atributos
Los nombres de los atributos siguen la misma convención que los de los métodos; deben estar en minúsculas, con palabras separadas por guiones bajos para mejorar la legibilidad.
class MyClass:
def __init__(self):
self.my_attribute = 'some value' # Nombre del atributo en minúsculas,
# palabras separadas por guiones bajos
En el código anterior, hemos definido un atributo my_attribute dentro del método __init__. El método __init__ es un método especial en las clases de Python que se llama automáticamente cuando se crea una nueva instancia de la clase.
Veamos un ejemplo completo de una clase, sus métodos y atributos:
class MyCar: # El nombre de la clase usa CapWords
def __init__(self):
self.car_model = 'Tesla Model 3' # El nombre del atributo usa snake_case
def start_engine(self): # El nombre del método usa snake_case
print('Engine started!')
Aunque Python no impone estrictamente estas convenciones de nomenclatura, seguirlas hace que tu código sea más profesional, legible y consistente. Por lo tanto, se considera una buena práctica en la comunidad de Python.