Pep 8, ¿te suena de algo? Quizás no, si no tienes un poco de experiencia con Python. PEP es una sigla que significa Python Enhancement Proposal y traduce propuesta de mejora de Python. Es una guía estándar de codificación que deberías seguir para escribir código Python de calidad. En este artículo te contaremos qué es y cuáles son sus principios.
¿Qué es PEP 8?
PEP8 es una guía de estilo sobre cómo escribir código Python. Fue creada por Guido van Rossum, creador de este lenguaje, y otros desarrolladores clave como Alyssa Coghlan y Barry Warsaw; se realizó con la finalidad de unificar la forma en la que los programadores escriben código. La idea central que está detrás de PEP 8 es que el código no solo debe funcionar correctamente, seino que también debe ser fácil de leer y mantener.
El propósito de la guía se podría resumir en la frase “el código es leído muchas más veces de las que se escribe”. Si sigues PEP 8, no solamente podrás beneficiarte tú como programador, sino también aquellos miembros de tu mismo proyecto o quienes sean que tengan que leer tu código en el futuro.
Principales reglas de PEP 8
Son muchas, pero las principales reglas de PEP 8 son:
Indentación
Esta define la estructura del código. En lugar de usar tabuladores, PEP 8 recomienda usar cuatro espacios por cada nivel de indentación. ¿Por qué espacios? Porque son más consistentes y no van a cambiar dependiendo de la configuración de cada editor:
def funcion_ejemplo():
if True:
print("Este es un ejemplo")
La consistencia es clave. Asegúrate de no mezclar espacios y tabuladores.
Longitud máxima de línea
En aras de mejorar la legibilidad, PEP 8 recomienda que las líneas de código no excedan los 79 caracteres. Si una línea es demasiado larga, es preferible dividirla en varias líneas:
def funcion_larga():
resultado = una_funcion_muy_larga_con_muchos_argumentos(
argumento_1, argumento_2, argumento_3, argumento_4)
Espacios en blanco
El uso de espacios en blanco es otro aspecto incluido en el manual. PEP 8 recomienda usar espacios alrededor de los operadores y después de las comas, pero nunca al inicio de una lista de argumentos o dentro de paréntesis:
# Correcto
x = 5 + 3
lista = [1, 2, 3]
# Incorrecto
x=5+3
lista = [ 1,2, 3 ]
Comentarios y docstrings
Escribir comentarios claros y útiles es muy importante para que el código sea entendible. PEP 8 recomienda que los comentarios sean frases completas, comenzando con mayúscula, y que expliquen lo que el código hace, no lo obvio:
# Correcto
# Esta función calcula el área de un triángulo
def calcular_area(base, altura):
return (base * altura) / 2
# Incorrecto
# Calcular área
def calcular_area(base, altura):
return (base * altura) / 2
Además, es buena práctica utilizar docstrings para documentar funciones y clases. Los docstrings son cadenas de texto que describen el propósito y uso de la función:
def sumar(a, b):
"""
Esta función recibe dos números y devuelve su suma.
"""
return a + b
Nombres de variables y funciones
Los nombres de variables y funciones deben seguir la convención de snake_case, es decir, todas las letras en minúscula y separadas por guiones bajos. Por otro lado, los nombres de clases deben seguir la convención CamelCase:
# Correcto
def calcular_suma(a, b):
return a + b
class MiClaseEjemplo:
pass
# Incorrecto
def CalcularSuma(a, b):
return a + b
class mi_clase_ejemplo:
pass
Importaciones
En Python las importaciones deben realizarse al principio del archivo. Además de esto, cada módulo debe importarse en una línea separada, a menos que se trate de múltiples elementos de un mismo paquete.
# Correcto
import os
import sys
# Incorrecto
import os, sys
Herramientas para asegurarnos de seguir PEP 8
Sabemos que seguir tantas reglas (esto fue solo un compendio, existen muchas más) puede ser abrumador y que no te aprendas todo en un solo momento. Por eso, existen herramientas que pueden ayudarte a verificar y corregir el estilo de tu código, veamos algunas:
- Pycodestyle: Analiza tu código y te señala las partes que no cumplen con PEP 8.
- Autopep8: Corrige automáticamente tu código para que cumpla con la guía de estilo.
- Black: Formateador automático que sigue estrictamente PEP 8 y es muy popular entre la comunidad Python.
Si quieres conocer el mundo de Python y todas las posibilidades que este te ofrece, puedes unirte a nuestro bootcamp en big data, en donde te enseñaremos cómo usar este lenguaje para hacer análisis de datos impresionantes con grandes cantidades de datos. ¡Conoce y enamórate del mundo de la programación con nuestro curso!