🐍 Tutorial Completo de Python con Explicaciones Detalladas

1️⃣ Introducción a Python

¿Qué es un lenguaje interpretado?

Python es un lenguaje interpretado, lo que significa que el código se ejecuta línea por línea por un intérprete (el programa python3 en Linux), sin necesidad de compilarlo previamente a código máquina.

# El intérprete de Python ejecuta comandos directamente
$ python3
>>> print("Hola Mundo")
Hola Mundo

Ventajas de lenguajes interpretados: Portabilidad (funciona en cualquier sistema con el intérprete), desarrollo más rápido (no hay que compilar), facilidad para probar código interactivamente.

¿Qué significa multipropósito?

Python es multipropósito porque puede usarse para:

Indentación en Python

La indentación (sangría) en Python no es solo estética, es sintáctica. Define los bloques de código (como las llaves {} en otros lenguajes).

# Ejemplo correcto (con indentación)
if 5 > 2:
print("Cinco es mayor que dos") # 4 espacios o tab
print("Esta línea también está en el bloque if")
# Ejemplo incorrecto (sin indentación)
if 5 > 2:
print("Esto dará error") # IndentationError

2️⃣ Variables y Tipos de Datos

Concepto de variables

Una variable es un nombre que referencia a un valor almacenado en memoria. En Python las variables:

$ python3
>>> nombre = "Juan" # String (cadena de texto)
>>> edad = 30 # Integer (entero)
>>> altura = 1.75 # Float (decimal)
>>> es_programador = True # Boolean (lógico)

Tipos de datos básicos

Tipo Descripción Ejemplo
int Números enteros (positivos o negativos) 42, -7, 0
float Números con decimales 3.14, -0.001, 2.0
str Cadenas de texto (entre comillas) "Hola", 'Python', """Triple comilla"""
bool Valores lógicos (Verdadero/Falso) True, False
NoneType Representa la ausencia de valor None

Tipado dinámico: En Python, el tipo de una variable se determina en tiempo de ejecución y puede cambiar:

>>> x = 10 # x es int
>>> x = "ahora soy string" # x pasa a ser str

3️⃣ Operadores

Los operadores son símbolos especiales que realizan operaciones sobre variables y valores.

Tipos de operadores

Tipo Operadores Descripción Ejemplo
Aritméticos + - * / // % ** Realizan cálculos matemáticos 5 + 3 → 8
Comparación == != > < >= <= Comparan valores (devuelven bool) 10 > 5 → True
Lógicos and or not Combinan condiciones booleanas True and False → False
Asignación = += -= *= /= Asignan valores a variables x += 5 (equivale a x = x + 5)
$ python3
>>> 5 + 3 * 2 # Precedencia de operadores
11
>>> (5 + 3) * 2 # Paréntesis cambian el orden
16
>>> 10 % 3 # Módulo (resto de división)
1
>>> 2 ** 3 # Potencia (2 elevado a 3)
8

4️⃣ Estructuras de Control

Concepto y características

Las estructuras de control permiten alterar el flujo de ejecución de un programa, tomando decisiones o repitiendo acciones.

Tipos principales

Tipo Descripción Uso típico
if/elif/else Ejecuta código condicionalmente Tomar decisiones basadas en condiciones
for Itera sobre una secuencia Procesar cada elemento de una lista
while Repite mientras se cumpla condición Repetir hasta que ocurra un evento
# Ejemplo de if/elif/else
edad = 18
if edad < 18:
print("Menor de edad")
elif edad == 18:
print("Recién mayor de edad")
else:
print("Mayor de edad")

Consejos Finales