Mi Primer Encuentro con Python: Conceptos Básicos

“¿Python? ¿Como la serpiente?” Esa fue literalmente mi primera reacción cuando mi jefe me dijo que íbamos a migrar nuestros scripts de Bash a Python. Era 2021, yo venía del mundo de JavaScript y PHP, y honestamente pensé que aprender otro lenguaje sería un dolor de cabeza innecesario.
Spoiler alert: Me equivoqué completamente. Python no solo cambió mi forma de programar, sino que se convirtió en mi herramienta favorita para casi todo: desde automatizar tareas aburridas hasta construir APIs completas.
En esta serie te voy a contar todo lo que he aprendido sobre Python, empezando por los conceptos básicos que me volaron la mente cuando los descubrí.
Por Qué Python Me Conquistó
Antes de meternos en código, déjame contarte por qué Python me enamoró:
1. Es Ridículamente Legible
Mi primer script en Python fue para procesar logs de servidor. En PHP me hubiera tomado como 50 líneas con sintaxis confusa. En Python:
# Leer archivo de logs y contar errores
with open('server.log', 'r') as file:
errors = [line for line in file if 'ERROR' in line]
print(f"Total de errores: {len(errors)}")
4 líneas. Cuatro. Y cualquier persona puede entender qué hace sin ser programador.
2. Funciona Para Todo
[PLACEHOLDER: Agregar ejemplos específicos de proyectos donde has usado Python - web scraping, automatización, APIs, etc.]
Desde mi primer script hasta aplicaciones web completas, Python ha sido mi compañero fiel. Es como el cuchillo suizo de la programación.
Los Fundamentos: Variables y Tipos
Empecemos con lo básico. Una de las cosas que más me gustó de Python es lo intuitivo que es definir variables:
# Mi información personal (obviamente fake para el ejemplo)
name = 'Emilio Castro'
age = 28
height = 1.75
favorite_languages = ['Python', 'JavaScript', 'Go']
skills = {
'Python': 'Avanzado',
'JavaScript': 'Intermedio',
'Docker': 'Intermedio',
'Linux': 'Avanzado'
}
is_coffee_addict = True
print(f"""
Hola, soy {name} y estos son mis datos:
Edad: {age} años
Altura: {height}m
Lenguajes favoritos: {favorite_languages}
Adicto al café: {is_coffee_addict}
""")
Lo Que Me Sorprendió
Viniendo de lenguajes tipados, me pareció mágico que Python automáticamente supiera qué tipo de dato era cada variable:
# Python es inteligente
numero = 42 # int
precio = 19.99 # float
nombre = "Emilio" # str
activo = True # bool
lista = [1, 2, 3] # list
datos = {"key": "value"} # dict
# Verificar tipos (esto me voló la mente la primera vez)
print(f"numero es {type(numero)}")
print(f"precio es {type(precio)}")
print(f"nombre es {type(nombre)}")
[PLACEHOLDER: Agregar anécdota sobre algún error que cometiste al principio con tipos de datos]
Mi Primer Proyecto Real: Organizador de Archivos
Para que veas Python en acción, te voy a mostrar el primer script útil que escribí. Tenía mi carpeta de Descargas hecha un desastre (como siempre), y decidí automatizar la organización:
import os
import shutil
from pathlib import Path
# Configuración de carpetas por tipo de archivo
file_types = {
'images': ['.jpg', '.jpeg', '.png', '.gif', '.bmp'],
'documents': ['.pdf', '.doc', '.docx', '.txt', '.rtf'],
'videos': ['.mp4', '.avi', '.mkv', '.mov', '.wmv'],
'music': ['.mp3', '.wav', '.flac', '.aac'],
'archives': ['.zip', '.rar', '.7z', '.tar', '.gz']
}
def organize_downloads():
downloads_path = Path.home() / 'Downloads'
# Crear carpetas si no existen
for folder_name in file_types.keys():
folder_path = downloads_path / folder_name
folder_path.mkdir(exist_ok=True)
# Mover archivos
for file_path in downloads_path.iterdir():
if file_path.is_file():
file_extension = file_path.suffix.lower()
# Buscar en qué categoría va el archivo
for folder_name, extensions in file_types.items():
if file_extension in extensions:
destination = downloads_path / folder_name / file_path.name
shutil.move(str(file_path), str(destination))
print(f"Movido: {file_path.name} → {folder_name}/")
break
# Ejecutar el organizador
if __name__ == "__main__":
organize_downloads()
print("¡Carpeta de descargas organizada! 🎉")
Este script me ahorró horas de trabajo manual y fue mi primer “momento eureka” con Python.
[PLACEHOLDER: Agregar detalles sobre cómo evolucionó este script, qué mejoras le agregaste, o cómo lo usas actualmente]
Errores de Principiante Que Cometí
1. Confundir Listas con Strings
# MAL - Pensé que esto funcionaría
name = "Emilio"
name.append("Castro") # ❌ Error!
# BIEN - Los strings son inmutables
name = "Emilio"
full_name = name + " Castro" # ✅ Correcto
2. No Entender la Diferencia Entre Listas y Diccionarios
[PLACEHOLDER: Agregar ejemplo específico de un error que cometiste confundiendo listas y diccionarios]
3. Olvidar los Dos Puntos en Estructuras de Control
# MAL - Me pasó más veces de las que quiero admitir
if age > 18 # ❌ Falta el :
print("Eres mayor de edad")
# BIEN
if age > 18: # ✅ Con los dos puntos
print("Eres mayor de edad")
Consejos Para Principiantes (Basados en Mi Experiencia)
1. No Te Obsesiones con la Sintaxis Perfecta
Al principio me frustraba cada error de sintaxis. Relájate. Python es muy permisivo y los errores son descriptivos.
2. Usa el Intérprete Interactivo
# Abre una terminal y escribe:
python3
>>> name = "Tu nombre"
>>> print(f"Hola {name}")
Es perfecto para probar código rápidamente.
3. Lee Código de Otros
[PLACEHOLDER: Agregar recomendaciones específicas de repositorios de GitHub o proyectos que te ayudaron a aprender]
Lo Que Viene en Esta Serie
En los próximos posts vamos a cubrir:
- Matemáticas y Funciones: Cómo Python hace que los cálculos sean súper fáciles
- Strings: Manipulación de texto como un pro
- Listas y Diccionarios: Las estructuras de datos que más vas a usar
- Control de Flujo: if, for, while y cómo tomar decisiones
- Funciones: Cómo organizar tu código como un profesional
- Archivos: Leer, escribir y procesar datos
- Manejo de Errores: Qué hacer cuando las cosas salen mal
[PLACEHOLDER: Agregar preview específico de algún proyecto interesante que vas a construir en la serie]
Mi Consejo Final
Python no es solo un lenguaje de programación, es una filosofía. Su lema “Simple es mejor que complejo” cambió mi forma de pensar sobre el código.
Si estás empezando, no te presiones. Yo tardé meses en sentirme cómodo, y aún sigo aprendiendo cosas nuevas cada día.
[PLACEHOLDER: Agregar invitación personal a los lectores - tal vez preguntarles sobre su experiencia con Python o qué les gustaría aprender]
¿Tienes alguna pregunta sobre Python o quieres compartir tu propia experiencia aprendiendo? ¡Déjame un comentario! Me encanta escuchar las historias de otros programadores.
Próximo post: Matemáticas y Funciones en Python - Te voy a mostrar cómo Python convirtió las matemáticas en algo divertido para mí (y eso que odiaba las mates en la escuela).
No hay historial de versiones disponible para este artículo.
¿Te gustó este artículo?
¡Gracias! Tu reacción ha sido registrada.