0% encontró este documento útil (0 votos)
5 vistas34 páginas

Program Ac I Óne N Python

El documento es una guía introductoria para aprender Python de manera rápida y divertida, comenzando desde los conceptos básicos de programación hasta la manipulación de datos y la creación de funciones. A través de ejemplos prácticos y ejercicios, se enseña a los lectores cómo utilizar variables, condicionales, ciclos y algoritmos para resolver problemas reales. Además, se aborda la lectura de archivos y la modularización del código, preparando a los estudiantes para proyectos más complejos.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
5 vistas34 páginas

Program Ac I Óne N Python

El documento es una guía introductoria para aprender Python de manera rápida y divertida, comenzando desde los conceptos básicos de programación hasta la manipulación de datos y la creación de funciones. A través de ejemplos prácticos y ejercicios, se enseña a los lectores cómo utilizar variables, condicionales, ciclos y algoritmos para resolver problemas reales. Además, se aborda la lectura de archivos y la modularización del código, preparando a los estudiantes para proyectos más complejos.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

De Cero a Código Real: Aprende Python Rápido, Divertido

y Sin Complicaciones."

PROGRAMACIÓNEN
PYTHON:

Creado por

SEBASTÍAN IGNACIO
HURTADO ROJAS
version 1 2026
CAPÍTULO 1:
INTRODUCCIÓN A LA
PROGRAMACIÓN EN
PYTHON
¿Alguna vez has soñado con crear software que
resuelva problemas reales, como automatizar tareas
aburridas o analizar datos masivos? Este capítulo te
lanza al mundo de Python, un lenguaje amigable y
poderoso. Exploramos qué es un programa, por qué
Python es ideal para principiantes (¡código corto y
legible!), y los elementos esenciales: lenguajes de
programación, editores de código, compiladores vs.
intérpretes. Aprenderás a traducir ideas en código
fuente, entender el "lenguaje máquina" (solo 0s y 1s), y
por qué Python destaca en ciencia, web y más. Con
ejemplos simples como sumar números, te sentirás un
mago del código en minutos. ¡Imagina escribir tu primer
"Hola, Mundo" y ver cómo el computador obedece! Este
capítulo te engancha con tips persuasivos: Python no es
solo un hobby, es una superhabilidad que multiplica tu
productividad. Terminarás motivado, listo para
conquistar algoritmos complejos.
INTRODUCCIÓN A LA
PROGRAMACIÓN EN PYTHON
¿Has pensado en cómo un simple clic en tu teléfono
hace que una pizza llegue a tu puerta? Todo es gracias
a programas: secuencias de instrucciones que
resuelven problemas. Un programa es como una receta
mágica que un computador sigue al pie de la letra.

Para crear uno, necesitas:


Un lenguaje de programación: Como Python, que
es amigable y de alto nivel (fácil para humanos, no
solo ceros y unos).
Un editor: Algo como Spyder o VS Code, donde
escribes tu "receta" (código fuente).
Compilador o intérprete: Python usa un intérprete,
que traduce y ejecuta tu código línea por línea,
como un traductor en tiempo real durante una
entrevista.

Imagina traducir un libro entero antes de leerlo


(compilador) vs. traducir frase por frase mientras hablas
(intérprete). Python es lo segundo: rápido para probar
ideas y cazar errores al vuelo.
INTRODUCCIÓN A LA
PROGRAMACIÓN EN PYTHON
¿Por qué Python? Es corto, versátil y detecta errores
automáticamente. Mira este ejemplo simple:

Ejecútalo y verás cómo tu computador te saluda. ¡Es tu


primer programa! Prueba cambiar el mensaje y ve cómo
responde al instante. Esto te engancha desde el minuto
uno.

Ejercicio rápido: Escribe un programa que imprima tu


nombre y edad. ¿Ves? Ya estás programando.
CAPÍTULO 2:
VARIABLES Y TIPOS DE
DATOS– EL ALMA DE TUS
PROGRAMAS
¡Ahora viene lo bueno! Imagina que las variables son
como cajas mágicas donde guardas información:
números, textos, verdades o mentiras. Sin ellas, tu
programa sería estático, como un libro sin personajes.
Pero con variables, todo cobra vida – puedes calcular,
decidir y repetir cosas dinámicamente. En este capítulo,
dominarás los tipos de datos básicos (enteros,
decimales, textos y booleanos), aprenderás a
manipularlos con operadores aritméticos, de
comparación y lógicos, y descubrirás cómo interactuar
con el usuario mediante entrada y salida. Con ejemplos
prácticos como calcular si puedes comprar un helado o
sumar edades, evitarás errores comunes como
TypeError y entenderás el alcance de las variables.

Tip del Seba: ¡Juega con ellos y siente cómo Python te


ahorra tiempo! Terminarás creando programas que
manipulan datos reales, motivado para avanzar a
condicionales y ciclos. ¿Listo para dar vida a tu código?
VARIABLES Y TIPOS DE DATOS

¡Ahora viene lo bueno! Imagina que las variables son


como cajas mágicas donde guardas información:
números, textos, verdades o mentiras. Sin ellas, tu
programa sería estático, como un libro sin personajes.
Pero con variables, todo cobra vida – puedes calcular,
decidir y repetir cosas dinámicamente.

¿Qué es una Variable?


Una variable es un nombre que le das a un valor para
usarlo después. Es como etiquetar una caja: "edad"
podría contener 25. En Python, creas una así:

Python infiere el tipo automáticamente. Cambia el valor:


edad = 26. Fácil, ¿no? Esto te ahorra tiempo y mantiene
el flujo.
VARIABLES Y TIPOS DE DATOS

Tipos de Datos Básicos (¡No te pierdas esto!)


Python tiene tipos principales que cubren casi todo:
Enteros (int): Números sin decimales, como 42 o -7.
Perfectos para contar.

Decimales (float): Números con punto, como 3.14 o


0.5. Ideales para mediciones.

Texto (str): Cadenas de caracteres, entre comillas.


"Hola" o 'mundo'.

Booleanos (bool): Verdadero (True) o Falso (False).


Clave para decisiones.

Tip del Seba: Juega con ellos. Mezcla tipos y ve qué


pasa – Python te dirá si hay errores, como sumar texto y
números (¡boom, TypeError!). Esto te enseña rápido sin
frustrarte.
VARIABLES Y TIPOS DE DATOS

Operadores: Haz Magia con Tus Variables


Operadores son símbolos que manipulan variables:
Aritméticos: +, -, *, /, // (división entera), % (módulo),
** (potencia).

De comparación: ==, !=, >, <, >=, <=. Retornan


booleanos.
Lógicos: and, or, not. Combina condiciones.
Asignación: =, +=, -=, etc. (atajos).

Ejemplo divertido: Calcula si puedes comprar un


helado.
VARIABLES Y TIPOS DE DATOS

Entrada y Salida: Habla con el Usuario


Usa input() para leer del teclado (siempre retorna str,
¡cuidado!).

Convierte tipos con int(), float(), str():

Tip del Seba: Sin conversión, sumar edades da errores


tontos. ¡Evítalos!

Errores Comunes y Alcance (Scope)


NameError: Usas una variable sin crearla.
TypeError: Mezclas tipos incompatibles. Variables
locales vs. globales: Dentro de funciones (próximos
capítulos), una variable es "local" a menos que digas
lo contrario.

Ejercicio motivador: Crea un programa que pida dos


números, los sume y diga si el resultado es par (usa % 2
== 0). Prueba con floats. ¡Siente el poder de manipular
datos!
CAPÍTULO 3:
CONDICIONALES Y CICLOS
– TOMA DECISIONES Y
REPITE EL ÉXITO
¡Ahora que tienes variables, decide con ellas! Los
condicionales (if, else, elif) son como bifurcaciones en
un camino: "Si llueve, usa paraguas; sino, sal con gafas".
En este capítulo, aprenderás a hacer que tu programa
tome decisiones inteligentes basadas en condiciones,
con ejemplos simples que te harán sentir el control total.
Luego, entramos en los ciclos: for para repeticiones fijas
(¡ideal para iterar listas conocidas!) y while para
"mientras sea verdad", perfecto para procesos
indefinidos. Descubrirás cómo usar contadores y
acumuladores para sumar, contar o procesar datos
dinámicamente, evitando loops infinitos. Con un
ejemplo motivador como verificar si un número es
mayor o un bucle que imprime "Hola!" varias veces,
evitarás errores comunes y ganarás confianza. Tip del
Seba: Combina condicionales dentro de ciclos para
magia real, como sumar solo números positivos.
Terminarás con un ejercicio práctico: suma números del
teclado hasta -1, ¡y sentirás cómo tu código responde al
mundo real! ¿Listo para que tus programas decidan y
repitan el éxito? Esto te prepara para algoritmos básicos
en el siguiente nivel.
CONDICIONALES Y CICLOS

Ahora que tienes variables, ¡decide con ellas! Los


condicionales (if, else, elif) son como bifurcaciones en
un camino: "Si llueve, usa paraguas; sino, sal con gafas".
Ejemplo:

Ciclos: For para repeticiones fijas, while para


"mientras sea verdad".

While con contadores/acumuladores:

Ejercicio: Suma números del teclado hasta -1. ¡Práctica


real!
CAPÍTULO 4:
ALGORITMOS BÁSICOS –
ENCUENTRA MAYORES,
PROMEDIOS Y MÁS
Los algoritmos son recetas mágicas para resolver
enigmas: ¡aquí los dominas! Repasamos condicionales
anidados, for y while, luego avanzamos a encontrar
máximos/mínimos, promedios y porcentajes en
secuencias de datos. Usa -1 como "bandera" para
terminar entradas. Ejemplos persuasivos: calcula el
mayor de una lista de edades, o el % de notas ≥4.0. Te
mantengo enganchado con ruteos interactivos:
"¿Funciona este código para promedios?" y mejoras
paso a paso. Imagina: sin algoritmos, tu programa es un
camino recto; con ellos, un laberinto conquistable.
Aprende contadores y acumuladores para procesar
datos infinitos.

Desafío: modifica un algoritmo para hallar el menor


valor! Este capítulo te convence: algoritmos no son
abstractos, son herramientas para analizar riesgos
(como distancias al mar) o estadísticas diarias. Termina
con práctica: ¡crea tu propio sumador inteligente y
siente la adrenalina.
ALGORITMOS BÁSICOS

Aquí aprendes a usarla todo lo aprendido para


problemas del mundo real: encontrar el más alto, el más
bajo, calcular promedios, porcentajes… ¡cosas que usas
todos los días!

Imagina que eres el entrenador de un equipo de fútbol y


tienes las alturas de todos tus jugadores. ¿Cómo
encuentras al más alto para ponerlo de arquero? ¿O al
promedio de altura para comprar uniformes? Eso es lo
que vamos a dominar.

4.1 Encontrando el Mayor y el Menor

ALGORITMOS BÁSICOS

¿Ves lo elegante? No necesitas saber cuántas personas


hay de antemano. Y si cambias > por < e inicializas
menor = 999, tienes el menor en un segundo.
Truco de oro: Este patrón lo vas a usar MIL veces.
Grábatelo.
ALGORITMOS BÁSICOS

4.2 Contadores y Acumuladores – Tus Mejores


Amigos
Contador: cuenta cuántas veces pasa algo.
Acumulador: suma valores.

Ejemplo clásico: promedio de notas hasta que el


usuario escriba -1.

4.3 Porcentajes – Para Impresionar a Todos


¿Cuántas notas fueron ≥ 4.0?
ALGORITMOS BÁSICOS

4.4 El Mayor Mejorado: Con Nombre Asociado


Ya lo vimos, pero ahora lo llevamos al siguiente nivel:
¿qué pasa si quieres el nombre del más alto y el más
bajo al mismo tiempo?
¡Fácil! Dos variables para mayor y dos para menor.

Ejercicios que te van a enganchar


[Link] temperaturas hasta -999 y muestra la más alta, la
más baja y el promedio.
[Link] el porcentaje de números pares ingresados.
[Link] nombre y sueldo hasta "FIN", muestra el
empleado mejor pagado y el promedio de sueldos.

Por qué este capítulo es oro puro: Aquí dejas de


escribir código “porque sí” y empiezas a resolver
problemas reales. Cada algoritmo que dominas es una
herramienta que llevarás contigo siempre. ¡Y lo mejor es
que es súper transferable a cualquier lenguaje!
CAPÍTULO 5:
LECTURA DE ARCHIVOS –
DEL TECLADO AL MUNDO
REAL
¡Sube de nivel! Deja atrás el teclado y entra al mundo
real: listas de ventas, temperaturas, empleados… todo en
archivos de texto. Aprenderás a abrir y leer archivos de
forma simple y segura con open() y with, procesar líneas
con strip() y split(), y calcular totales o cantidades en
minutos. Con ejemplos prácticos como analizar ventas
diarias y ejercicios reales (vuelos, sucursales), pasarás
de procesar un dato a cientos en pocas líneas. ¡Imagina
automatizar reportes o analizar tus gastos personales!
Este capítulo te convierte en un programador que
maneja datos reales, listo para modularizar con
funciones.
LECTURA DE ARCHIVOS

¡Bienvenido al siguiente nivel! Hasta ahora todo era del


teclado: genial para practicar, pero en la vida real los
datos vienen en montones: listas de clientes, puntajes,
ventas… ¡archivos de texto! Aquí aprendes a abrirlos,
leerlos y procesarlos como un pro. Es el puente entre
juguete y herramienta profesional.

5.1 Abrir y Leer Archivos: Lo Básico que Cambia Todo


En Python es ridículamente simple:

Truco de oro: Usa with para que se cierre solo (más


seguro):
LECTURA DE ARCHIVOS

5.2 Procesando Líneas Reales


Los archivos suelen tener formato: campos separados
por comas o espacios.

Ejemplo motivador: Archivo [Link] con líneas como:


2025-01-01,Notebook,1200000
2025-01-02,Mouse,15000
2025-01-03,Notebook,1250000

Queremos saber el total de ventas del mes y cuántas


notebooks se vendieron.

¡Listo! En 15 líneas ya estás analizando ventas reales.


Cambia "Notebook" por cualquier producto y el código
sigue funcionando. ¡Flexibilidad total!
LECTURA DE ARCHIVOS

5.3 Ejercicios que te enganchan rápido


[Link]: Archivo con origen, destino, pasajeros.
Calcula total de vuelos, vuelos a Santiago y
promedio de pasajeros desde Antofagasta o
Santiago.
[Link]: Datos de empleados. Encuentra la
sucursal con más empleados, promedios de edad y
la ponderación menor.

El gran persuasivo: Dominar archivos es lo que separa


al que juega con código del que resuelve problemas
reales. En minutos pasas de “hola mundo” a analizar
cientos de registros. ¡Y esto es solo el comienzo!

¿Te gusta más este ejemplo de ventas? Es más neutral,


más relatable y te prepara perfecto para proyectos como
un registro de gastos personales o un mini-inventario.
¿Quieres que agreguemos un tercer ejemplo rápido
(temperaturas, por ejemplo) o seguimos expandiendo
otro capítulo? ¡Tú decides, estamos en racha!
CAPÍTULO 6: FUNCIONES Y
PROCEDIMIENTOS – DIVIDE,
CONQUISTA Y REUTILIZA
COMO PRO
¡Llega el gran salto! Deja de escribir código repetido y
convierte tu programa en una obra modular. Aprenderás
a crear funciones que devuelven valores y
procedimientos que realizan acciones, con parámetros,
valores por defecto y alcance de variables bien
controlado. Con ejemplos claros como saludar, calcular
potencias o áreas de figuras, verás cómo el programa
principal queda limpio y legible. Divide para conquistar:
reutiliza código, depura más fácil y piensa como
profesional. ¡Imagina construir herramientas complejas
sin caos! Terminarás este capítulo listo para proyectos
reales y código elegante.
FUNCIONES Y PROCEDIMIENTOS

Este es el capítulo donde tu código deja de ser un


spaghetti y se convierte en una obra de arte modular.
Imagina que estás construyendo una casa: ¿la harías
toda de una pieza gigante? ¡No! Pones cimientos,
paredes, techo… cada parte independiente pero que
encaja perfecto. Eso es “dividir para conquistar”.

6.1 ¿Por Qué Usar Funciones?


Reutilizas código (¡no copies y pegues nunca más!).
Tu programa principal se lee como un resumen
ejecutivo.
Es más fácil depurar: si algo falla, sabes exactamente
en qué función buscar.
Trabajas en equipo sin pisarse.

6.2 Procedimientos vs Funciones


Procedimiento: hace algo, no devuelve nada (print).
Función: hace algo y devuelve un valor (como len()
o int()).

Analogía de la vida real: Quieres envolver un regalo


para tu mamá.
El procedimiento envolver_regalo(papel, regalo)
envuelve y ya. No te da nada de vuelta.
La función calcular_area(base, altura) te devuelve el
área calculada.
FUNCIONES Y PROCEDIMIENTOS

6.3 Creando Tu Primera Función

6.4 Funciones que Retornan Valores

6.5 Parámetros: El Secreto del Comportamiento


Variable
Los parámetros son como los ingredientes de una
receta.
FUNCIONES Y PROCEDIMIENTOS

6.6 Alcance de Variables (Scope) – Evita Sorpresas


Variables dentro de una función son locales →
desaparecen al terminar.
Variables fuera son globales → visibles en todo
(úsalas con cuidado).

6.7 Dividir para Conquistar en Acción


Ejemplo completo: programa que calcula área de
figuras.
FUNCIONES Y PROCEDIMIENTOS

¡Mira qué legible queda el main!

Ejercicios que te vuelan la cabeza


[Link]ón que recibe un número y retorna su factorial
(¡usa ciclo!).
[Link]ón maximo(a, b, c) que retorna el mayor de tres
números sin usar max().
[Link] que imprime una tabla de multiplicar
del número que le pases.

El gran persuasivo: Una vez que dominas funciones, tu


código pasa de ser “funcional” a ser “elegante y
profesional”. Los programadores senior viven de esto.
Tú, en unas pocas páginas, ya estarás pensando como
ellos.

¿Listo para que estos capítulos expandidos queden aún


más potentes en el libro? Si quieres que desarrolle algún
ejercicio completo, agregue más analogías o incluso un
mini-proyecto que una ambos capítulos, ¡solo dilo!
Estamos construyendo algo épico aquí.
CAPÍTULO 7: FUNCIONES Y
EJERCICIOS PRÁCTICOS –
SUBE EL NIVEL CON
PROYECTOS REALES
¡Las funciones ya son tu arma secreta! Aquí repasamos y
practicamos a fondo: factoriales con ciclos, suma de
distancias en rangos desde archivos y un programa
completo para calcular áreas de múltiples figuras
geométricas. Todo dividido en funciones limpias para
que tu código quede profesional y reutilizable. Con
ejemplos frescos y ejercicios adictivos como el de
[Link] o el ranking de áreas, sentirás que programas
como un pro de verdad. ¡Sube el nivel y prepárate para
listas y estructuras más potentes!
FUNCIONES Y EJERCICIOS
PRÁCTICOS
¡Las funciones ya no son un truco, son tu arma secreta!
Aquí repasamos y practicamos duro: factoriales, rangos,
áreas geométricas… todo dividido en subprogramas
para que tu código quede limpio y profesional.

7.1 Repaso Rápido con Ejemplos que Enganchan


Factorial: El clásico que te hace brillar.

7.2 Ejemplo Fresco: Suma de Distancias en Rangos


Archivo [Link] con líneas como 1 5 (suma 2+3+4 = 9)
y 10 12 (10+11 = 21).
FUNCIONES Y EJERCICIOS
PRÁCTICOS
7.3 Figuras Geométricas: Divide y Conquista Total
Programa que lee cantidad de figuras y calcula cuál
tiene mayor área.

Ejercicios adictivos: Factorial de los primeros números,


suma de rangos y el completo de figuras. ¡Hazlos y
sentirás que ya programas como pro!
CAPÍTULO 8: LISTAS –
COLECCIONES QUE
CAMBIAN EL JUEGO

¡Adiós a las variables solitarias! Las listas te permiten


guardar cientos o miles de datos en una sola estructura.
Aprenderás a crearlas, agregar elementos, acceder,
modificar y procesarlas con funciones como append(),
len() e índices. Con ejemplos prácticos desde archivos
(como nú[Link]), resolverás problemas reales: contar
valores dentro de un rango, encontrar nombres únicos,
comunes o frecuencias con listas paralelas. ¡Multiplica
tu poder y maneja el caos de datos como un pro! Listo
para pasar a matrices y ordenamiento.
LISTAS

¡Adiós variables solitarias! Las listas guardan cientos de


datos en una sola variable. Aquí aprendes a crearlas,
llenarlas y resolver problemas que antes eran
imposibles.

8.1 Lo Básico que Necesitas Dominar

8.2 Ejemplo: Números Dentro del ±10% del Promedio


Archivo [Link] con un número por línea.
LISTAS

8.3 Problemas Reales con Listas


Nombres únicos de un archivo.
Nombres comunes entre dos archivos.
Frecuencia de cada nombre (¡dos listas paralelas:
nombres y contadores!).

Truco de oro: Usa funciones auxiliares como


esta(palabra, lista) y indice() para mantener todo limpio.

Ejercicios que te enganchan: Los tres problemas


clásicos del capítulo (únicos, duplicados, frecuencias).
¡Resuélvelos y verás cómo las listas multiplican tu poder!
CAPÍTULO 9: MATRICES Y
ORDENAMIENTO – DATOS
EN DOS DIMENSIONES Y
ORDEN PERFECTO
¡El nivel final! Las matrices te abren el mundo de los
datos tabulares: estadísticas por grupos, participación
por asignatura y más. Usarás NumPy para crear y sumar
tablas rápidamente, llenándolas desde archivos. Luego
dominarás el ordenamiento burbuja con listas paralelas:
ordena por un criterio y mueve todo lo asociado. Con
ejercicios potentes como matriz de estudiantes, ordenar
marcas o riesgos costeros, tu código será modular,
rápido y profesional. ¡Terminas el libro listo para
conquistar cualquier problema real con Python!
MATRICES Y ORDENAMIENTO

¡Las listas eran geniales, pero las matrices son el


siguiente nivel! Tablas de datos, estadísticas por
grupos… todo cabe aquí.

9.1 Matrices con NumPy (Tu Nuevo Mejor Amigo)

9.2 Ejemplo Fresco: Estudiantes por Asignatura



Lee archivo con rut, grupo, asignatura llena matriz →
suma por asignatura.

9.3 Ordenamiento Burbuja con Listas Paralelas


Ordena por una lista y mueve las demás (o filas de
matriz).
MATRICES Y ORDENAMIENTO

9.3 Ordenamiento Burbuja con Listas Paralelas


Ordena por una lista y mueve las demás (o filas de
matriz).

Ejercicios potentes: Matriz de participación, ordenar


marcas con datos asociados, y el clásico de riesgo
costero.

El gran cierre de estos capítulos: Con funciones, listas


y matrices ya no hay problema que se te resista. Tu
código es modular, rápido y elegante. ¡Estás listo para
proyectos reales!

¿Te prendieron estos tres capítulos expandidos?


¿Quieres que agreguemos un ejemplo más en alguno,
un mini-proyecto final o pasamos a pulir la conclusión
del libro? ¡Estamos construyendo una bestia, díme qué
sigue!
¡YA ERES UN
PROGRAMADOR DE
VERDAD – Y ESTO SOLO ES
EL COMIENZO!
¡Felicidades absolutas, crack! Pasaste de cero a dominar
Python: variables que bailan a tu ritmo, condicionales y
ciclos que deciden por ti, algoritmos que resuelven lo
imposible, archivos reales en un parpadeo, funciones
modulares elegantes, listas que organizan el caos y
matrices que manejan mundos de datos.
Ya no temes al código. Lo controlas. Automatizas lo
aburrido, analizas lo complejo y creas herramientas
reales.
Esto es tu base de lanzamiento. Python abre puertas a
web, datos, IA y todo lo que imagines. Cada concepto
aprendido se multiplica en proyectos épicos.
Mi último desafío: hoy empieza algo tuyo. Un gestor de
gastos, un analizador de notas o lo que te prenda.
Escríbelo, rómpelo, mejóralo. Cada línea te hará más
rápido y poderoso.
Programar es una aventura adictiva que te da
superpoderes. Tú ya estás en el camino.
Cierra el libro, abre el editor y crea algo increíble. El
código te espera.
¡A romperla, crack! Tú puedes. Tú ya lo estás haciendo.
¡Nos vemos en el próximo nivel!

También podría gustarte