Saltar al contenido
🐍 Curso de Python
/

Módulo 1 · Lección 8 de 59

Comentarios y estilo

Cómo escribir comentarios que sirvan de algo y las convenciones de PEP 8 que sigue toda la comunidad de Python.

⏱ 9 min de lectura

Comentarios#

Todo lo que va después de una almohadilla # lo ignora Python por completo. Sirve para dejar notas a quien lea el código, que muchas veces serás tú dentro de tres meses.

python
# Esto es un comentario de línea completa
precio = 19.99      # y esto un comentario al final de una línea

Para comentar varias líneas, se pone una almohadilla en cada una. En los editores hay un atajo: selecciona las líneas y pulsa Ctrl + 7 o Cmd + /, según el teclado.

Comentarios buenos y comentarios inútiles#

El error clásico de quien empieza es explicar qué hace el código. Eso ya lo dice el código:

python
# Mal: el comentario no aporta nada
contador = contador + 1     # suma uno al contador
precio_final = precio * 1.21    # multiplica el precio por 1.21

Lo que el código no puede contar es el porqué:

python
# Bien: explica una decisión que no es evidente
precio_final = precio * 1.21    # IVA general español, vigente desde 2012

# Bien: avisa de algo no obvio
respuesta = respuesta.strip()   # el formulario web añade espacios al final

# Bien: deja constancia de algo pendiente
# TODO: validar que la fecha no sea futura antes de guardar

Comentar para depurar#

Un uso práctico: desactivar una línea temporalmente sin borrarla.

python
resultado = calcular_total(pedido)
# print(f"{resultado=}")      # lo dejo por si vuelvo a necesitarlo

Solo recuerda limpiarlos antes de dar el trabajo por terminado.

PEP 8: el estilo oficial#

PEP 8 es el documento que define cómo se escribe Python "bonito". No es obligatorio, pero lo sigue prácticamente todo el mundo, y si te acostumbras desde hoy no tendrás que desaprender nada.

Sangría: cuatro espacios#

python
if edad >= 18:
        print("Mayor de edad")      # exactamente cuatro espacios

Nunca tabuladores, y nunca mezcles ambos. Configura tu editor para que la tecla Tab inserte cuatro espacios; Visual Studio Code con la extensión de Python ya lo hace.

Espacios alrededor de los operadores#

python
# Bien
total = precio * cantidad
if edad >= 18 and tiene_carnet:

# Mal
total=precio*cantidad
if edad>=18 and tiene_carnet:

Pero no dentro de los paréntesis ni antes de una coma:

python
print("hola", nombre)        # bien
print( "hola" , nombre )     # mal

Nombres#

QuéCómoEjemplo
Variables y funcionesminúsculas con guion bajoprecio_total, calcular_iva
Constantesmayúsculas con guion bajoIVA_GENERAL, MAX_INTENTOS
Clasescada palabra en mayúscula, sin guionesCuentaBancaria
Uso internoempezando por guion bajo_contador

Líneas cortas#

La recomendación clásica es no pasar de 79 caracteres; hoy mucha gente usa 88 o 100. El objetivo real es que quepan en pantalla sin desplazamiento horizontal. Para partir una línea larga, usa paréntesis:

python
mensaje = (
    f"El pedido {numero} de {cliente} "
    f"por importe de {total:.2f} euros "
    f"se ha registrado correctamente."
)

Líneas en blanco#

Una línea en blanco separa bloques lógicos dentro de un mismo trozo de código. Dos separan funciones y clases. No dejes tres o cuatro seguidas.

python
nombre = input("Nombre: ").strip()
edad = int(input("Edad: "))

precio_base = 100
descuento = 0.15
precio_final = precio_base * (1 - descuento)

print(f"{nombre}, pagas {precio_final:.2f} euros")

Estructura recomendada de un fichero#

calculadora.py
"""Calculadora de presupuestos para el curso de Python.

Pide los datos de un producto y muestra el desglose con IVA.
"""

import math

IVA = 0.21
DESCUENTO_MAXIMO = 0.5

nombre = input("Producto: ").strip()
precio = float(input("Precio sin IVA: "))

total = precio * (1 + IVA)

print(f"{nombre}: {total:.2f} euros con IVA")

El texto entre triples comillas del principio se llama docstring y explica para qué sirve el fichero entero. A diferencia de un comentario, Python lo conserva y se puede consultar con help(). Lo veremos otra vez, y en profundidad, en la lección de funciones.

El orden habitual es: docstring, importaciones, constantes y después el código.