Durante el uso de Python, vas a tener que nombrar variables y funciones con frecuencia. No obstante, existen ciertas reglas y buenas prácticas para seguir.
Algunas de ellas son obligatorias (impuestas por el lenguaje), y otras son simplemente convenciones que puedes seguir.
Vamos a ver las reglas y buenas prácticas para nombrar variables en Python.
Reglas Específicas
Case Sentitive: Los nombres de variables en Python son sensibles a mayúsculas y minúsculas. Por ejemplo,
variable
,Variable
yVARIABLE
son consideradas diferentes.Inicio de Nombre: El nombre de la variable debe comenzar con una letra (a-z, A-Z) o un guión bajo (
_
). No debe comenzar con números ni otros caracteres.variable = 42 _variable_privada = "Python" 1variable = "Error" # Incorrecto, no debe comenzar con un número
Caracteres Permitidos: Los nombres de variables pueden contener letras (a-z, A-Z), dígitos (0-9) y guiones bajos (
_
). No se permiten otros caracteres especiales como espacios, signos de puntuación o símbolos.mi_variable = "Python" edad3 = 30 mi_variable@ = "Error" # Incorrecto, no se permite el símbolo @
Palabras Reservadas: No se pueden utilizar palabras reservadas de Python como nombres de variables. Por ejemplo,
if
,else
,for
,while
, entre otras.if = 10 # Incorrecto, if es una palabra reservada mi_if = 10 # Correcto, añadiendo prefijo o sufijo a la palabra reservada
Legibilidad y Significado: Es importante elegir nombres de variables que sean descriptivos y reflejen su uso en el contexto del programa. Esto mejora la legibilidad y comprensión del código.
total_compras = 100 num = 100 # Menos descriptivo, se desconoce el propósito
Convenciones de Estilo
Python PEP 8 (Guía de Estilo para el Código Python) sugiere convenciones adicionales para mejorar la legibilidad del código:
- snake_case: Para nombres de variables, funciones y métodos. Por ejemplo,
mi_variable
,calcular_total()
. - CamelCase: Para nombres de clases en Python. Por ejemplo,
MiClase
,MiClaseEspecial
.
# Ejemplos de snake_case
nombre_completo = "Luis Pérez"
calcular_total = lambda x, y: x + y
# Ejemplos de CamelCase (para nombres de clases)
class MiClase:
def __init__(self):
self.atributo = None
- Mayúsculas para el caso de constantes, separadas por guiones bajos, siguiendo el estilo
CONSTANTE_DE_EJEMPLO
.