Saltar al contenido principal

Borrador en Vista Previa

"Mi Primer Encuentro con Python: Conceptos Básicos" no está publicado públicamente

Mi Primer Encuentro con Python: Conceptos Básicos

Publicado:mié, 24 de mayo de 2023
Python Basics
Python Basics

“¿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).



Quieres apoyarme para seguir creando contenido? Puedes invitarme un café (o una cerveza) en mi página de Ko-Fi, es totalmente voluntario y tu ayuda me serviría de mucho para seguir haciendo lo que amo.


Cargando historial...

¿Te gustó este artículo?