Programación · Python 3

Python: aprende a programar
desde cero y sin complicaciones

Un lenguaje sencillo con enormes posibilidades: desde tus primeros scripts hasta páginas web, análisis de datos y automatización. Veremos los fundamentos paso a paso y los probaremos enseguida en la práctica.

Por qué Python

Python lo creó Guido van Rossum y su primera versión salió en 1991. El nombre viene del programa de humor británico Monty Python’s Flying Circus (en España, «El circo volante de Monty Python»), no de la serpiente.

Se valora por su sintaxis legible: el código en Python suele parecerse a un texto en inglés con sangrías. Por eso es ideal para empezar, pero también lo usan profesionales de todo tipo, desde desarrolladores web hasta científicos.

La legibilidad cuenta.

— El Zen de Python, PEP 20 (traducción libre)

Python se distribuye con una licencia libre, funciona en Linux, macOS y Windows e incluye una enorme biblioteca estándar: trabajar con archivos, redes, fechas, matemáticas y mucho más ya viene incorporado.

Ruta de aprendizaje: cinco pasos

Ilustración: consola de Python con varias órdenes y su resultado
La consola interactiva (REPL) es el mejor sitio para tus primeros experimentos.
  1. Paso 1

    Primera ejecución

    Instala Python, abre una terminal y ejecuta tu primer programa. Lo importante es comprobar que el código funciona de verdad.

  2. Paso 2

    Fundamentos del lenguaje

    Variables, tipos de datos, operadores, condiciones y bucles. Es la base sobre la que se construye todo lo demás.

  3. Paso 3

    Funciones y estructuras de datos

    Aprende a dividir un programa en partes y a guardar datos en listas, diccionarios, tuplas y conjuntos.

  4. Paso 4

    Archivos, errores y módulos

    Lectura y escritura de archivos, gestión de excepciones, importación de módulos, entornos virtuales e instalación de paquetes con pip.

  5. Paso 5

    Objetos y proyectos

    Clases, pruebas, control de versiones y un proyecto propio: es lo que convierte los conocimientos en habilidad.

Primeros pasos

Descarga Python desde la web oficial, python.org, o instálalo con el gestor de paquetes de tu sistema. Después crea un archivo hola.py con una sola línea:

print("¡Hola, mundo!")

Linux y macOS

python3 --version
python3 -m venv .venv
source .venv/bin/activate
pip install requests
python3 hola.py

Windows (PowerShell)

py --version
py -m venv .venv
.venv\Scripts\Activate.ps1
pip install requests
py hola.py

El entorno virtual (.venv) guarda las bibliotecas por separado para cada proyecto, de modo que no interfieran entre sí.

Símbolos de Python con el teclado español

Python usa muchas llaves, corchetes y barras. En la distribución española (ES) de Windows y Linux se escriben con la tecla AltGr (la tecla Alt de la derecha):

Cómo escribir símbolos habituales en Python con el teclado español
SímboloCombinación
{AltGr + ´
}AltGr + Ç
[AltGr + `
]AltGr + +
\AltGr + º
#AltGr + 3
@AltGr + 2
|AltGr + 1
~AltGr + 4

En macOS se usa la tecla ⌥ (Opción) y algunas combinaciones cambian: consulta el visor de teclado del sistema.

Lo básico en cinco minutos

Seis conceptos con los que se construye casi cualquier programa.

Una caja con el valor x = 5: símbolo de las variables

Variables y tipos

edad = 30

Un nombre bajo el que se guarda un valor. Tipos principales: int, float, str y bool.

Una bifurcación: símbolo de las condiciones

Condiciones

if x > 0:

El programa elige un camino según la situación: if, elif, else.

Una flecha circular: símbolo de los bucles

Bucles

for i in range(3):

Repiten acciones: for recorre elementos y while trabaja mientras la condición sea verdadera.

La notación f(x): símbolo de las funciones

Funciones

def sumar(a, b):

Un bloque de código con nombre: recibe argumentos, hace su trabajo y devuelve un resultado.

Corchetes con celdas: símbolo de las listas

Colecciones

{"a": 1}

Formas de guardar muchos valores: list, tuple, dict y set.

Esquema de una clase con nombre, atributos y métodos

Clases

class Perro:

Describen objetos: datos y comportamiento reunidos en un solo lugar.

Ejemplos de código con su resultado

Pulsa sobre un ejemplo para desplegarlo. Puedes copiar el código y pegarlo en tu archivo o en la consola de Python.

Variables y f-strings
nombre = "María"
edad = 30
print(f"¡Hola, {nombre}! Tienes {edad} años.")
print(type(edad), type(3.14), type("texto"), type(True))

Resultado

¡Hola, María! Tienes 30 años.
<class 'int'> <class 'float'> <class 'str'> <class 'bool'>
Condiciones
temperatura = 22

if temperatura < 10:
    print("Hace frío")
elif temperatura < 25:
    print("Temperatura agradable")
else:
    print("Hace calor")

Resultado

Temperatura agradable

La sangría en Python no es decoración, sino parte de la sintaxis: indica qué código pertenece a cada bloque.

Bucles for y while
total = 0
for n in range(1, 6):
    total += n
print(total)

cuenta = 3
while cuenta > 0:
    print(cuenta)
    cuenta -= 1

Resultado

15
3
2
1

range(1, 6) genera los números del 1 al 5: el límite derecho no se incluye.

Funciones
def area(ancho, alto=1):
    """Devuelve el área de un rectángulo."""
    return ancho * alto

print(area(4, 5))
print(area(7))

Resultado

20
7

El parámetro alto tiene un valor por defecto, así que el segundo argumento se puede omitir.

Listas, diccionarios y listas por comprensión
frutas = ["manzana", "plátano", "cereza"]
frutas.append("pera")
print(len(frutas), frutas[0], frutas[-1])

precios = {"manzana": 2, "plátano": 3}  # € por kilo
precios["cereza"] = 9
for fruta, precio in precios.items():
    print(fruta, precio)

cuadrados = [n * n for n in range(5)]
print(cuadrados)

Resultado

4 manzana pera
manzana 2
plátano 3
cereza 9
[0, 1, 4, 9, 16]

El índice -1 significa «el último elemento».

Archivos y gestión de errores
from pathlib import Path

ruta = Path("notas.txt")
ruta.write_text("Primera línea\nSegunda línea\n", encoding="utf-8")

try:
    for linea in ruta.read_text(encoding="utf-8").splitlines():
        print(linea)
    numero = int("no es un número")
except ValueError as error:
    print("Error:", error)

Resultado

Primera línea
Segunda línea
Error: invalid literal for int() with base 10: 'no es un número'

Indica siempre encoding="utf-8": así las tildes y la eñe se guardan bien en cualquier sistema. Fíjate también en que los mensajes de error de Python están en inglés; con try / except puedes capturarlos y mostrar tu propio texto.

Clases
class Perro:
    def __init__(self, nombre):
        self.nombre = nombre

    def hablar(self):
        return f"{self.nombre} dice: ¡guau!"

rex = Perro("Rex")
print(rex.hablar())

Resultado

Rex dice: ¡guau!

self es el propio objeto; a través de él, el método accede a los datos del objeto.

Dónde se usa Python

Un solo lenguaje, muchos caminos. Puedes elegir más adelante, cuando domines lo básico.

Un globo terráqueo: símbolo del desarrollo web

Desarrollo web

Django · Flask · FastAPI

Páginas web, API y la parte de servidor de las aplicaciones.

Un gráfico de barras: símbolo del análisis de datos

Análisis de datos

NumPy · pandas · matplotlib

Tratamiento de tablas, cálculos y creación de gráficos.

Un engranaje: símbolo de la automatización

Automatización

scripts · archivos · redes

Olvídate de las tareas repetitivas: renombrar archivos, informes, administración de sistemas.

Una red neuronal: símbolo del aprendizaje automático

Aprendizaje automático

scikit-learn · PyTorch

Modelos que aprenden a partir de los datos.

Cómo aprender de forma eficaz

A programar se aprende con las manos. Unas cuantas reglas sencillas te ayudarán a no perder el rumbo.

  1. Practica a diario. Es mejor media hora cada día que cinco horas una vez a la semana.
  2. Escribe el código a mano. Copiar crea la ilusión de que lo entiendes; teclearlo hace que se te quede.
  3. Lee los errores. El traceback se lee de abajo arriba: la última línea nombra el error y las de encima indican dónde ocurrió.
  4. Resuelve problemas pequeños. Una calculadora, «adivina el número», una lista de tareas o un contador de palabras.
  5. Haz tu propio proyecto. En cuanto domines lo básico, empieza un programa que te sea útil a ti.

Consejo del día

Cargando…

Mi progreso

Completado: 0 de 7

Las marcas se guardan solo en tu navegador y no se envían a ningún sitio.

Cuestionario: ¿qué muestra este programa?

Lee el código y elige la opción correcta. No te precipites: algunas preguntas tienen trampa.

Pregunta 1 de 8 Puntuación: 0

Para seguir aprendiendo

  • Tutorial oficial de Python — gratuito y detallado, en español. La traducción sigue en curso, así que algunas secciones todavía están en inglés.
  • Biblioteca estándar — referencia de los módulos incluidos con Python (en español).
  • PEP 8 — guía de estilo del código: cómo nombrar variables y dar formato a los programas (en inglés).
  • PEP 20 — El Zen de Python — una breve lista de principios del lenguaje (en inglés). En la consola también lo muestra import this.
  • Python España — asociación sin ánimo de lucro que impulsa el uso de Python en España: comunidades locales, eventos y recursos para aprender.
  • PyCon España — el congreso de la comunidad Python en España.

Todas las fuentes se pueden consultar gratis. Los enlaces se abren en una pestaña nueva.