Ciencias de la Computación · Ceibal

Rompiendo la maldición
con Python

¿Qué es programar? ¿Cómo le pedimos a una computadora que haga algo? ¿Qué son las computadoras y cómo funcionan? En este video intentaremos responder a estas preguntas.

01 · Comunicación

Hola Mundo y la función print()

Mira este video para conocer oficialmente a Python y entender los primeros pasos en la consola. Luego, escribiremos nuestro primer programa.

Existe una vieja leyenda en la programación: si no haces que tu primer programa diga "Hola Mundo", tendrás mala suerte. Para hablar con la pantalla usamos nuestra primera herramienta: print().
# Esto mostrará un texto en la consola print("Hola Mundo")
🖥 Ejercicio 1 — Rompe la maldición Inicial
Escribe un print() que muestre el texto "Hola Mundo". ¡No olvides usar comillas!

02 · Memoria

Guardando datos: Variables

Usar print() está muy bien, pero si solo mostramos el dato, la computadora lo olvida inmediatamente. Para poder reutilizar la información, necesitamos guardarla y darle un nombre. A esto le llamamos Variable.

Una variable es un elemento fundamental en la programación que nos permite almacenar datos para usarlos o modificarlos más adelante.

Puedes imaginarla como una "caja" donde guardas información. Aunque, como curiosidad técnica, internamente Python maneja esto creando primero el dato en la memoria y luego usando el nombre de la variable como una etiqueta adherida a esa "caja" para encontrarla rápidamente.

Para crear una variable, primero inventas un nombre, pones el signo igual = y luego el valor que vas a guardar. Para ver ese valor, usamos print(nombre_variable).
# Creamos variables para guardar nuestros datos nombre = "Ana" edad = 15 # Ahora podemos usar esas variables con print print(nombre) print(edad)
🖥 Ejercicio 2 — El Inventario del Aventurero Práctica
Nuestro héroe necesita preparar su mochila. Ya hemos creado algunas variables con sus datos, pero faltan otras.
1. Crea la variable monedas y guárdale el valor 50.5.
2. Crea la variable tiene_espada y guárdale el valor True.
3. Muestra las 4 variables usando print() (una línea para cada print).

03 · Tipos de Datos

¿Qué hay dentro de la variable?

Como vimos en el inventario del héroe, no todas las variables guardan lo mismo. Python diferencia estrictamente entre números, textos y valores lógicos.

int
Entero
Números sin decimales.
Ej: pociones = 5
float
Flotante
Números con punto decimal.
Ej: monedas = 50.5
str
String
Texto entre comillas.
Ej: heroe = "Link"
bool
Booleano
Verdadero o Falso.
Ej: tiene_espada = True
Si tienes dudas sobre qué tipo de dato hay guardado en una variable, usa la función type(). Por ejemplo: print(type(42)) te dirá que es de clase int.
✦ Pregunta 1 — Tipos engañosos
💻 Abre la Consola Libre abajo a la derecha y ejecuta: print(type("100"))
Si ejecutas ese código, ¿qué resultado obtendrás?
Aclass 'int' (Porque 100 es un número)
Bclass 'str' (Porque está entre comillas)
Cclass 'float'

04 · Operadores

Operar con los datos

Los operadores son símbolos que realizan operaciones. Tenemos tres familias: aritméticos (matemáticos), relacionales (comparaciones) y lógicos.

📄
Material complementario: Te compartimos una síntesis de los operadores en formato tabla para que los tengas a mano al momento de programar.
Operadores aritméticos — hacé clic para ver detalles
+
Suma
Resta
*
Multip.
/
División
//
Div. entera
%
Módulo
**
Potencia

+ Suma / Concatenación

Con números: suma. Con strings: une (concatena) los textos.

3 + 4 # → 7
"Hola" + " mundo" # → "Hola mundo"

− Resta

Diferencia entre dos valores numéricos.

10 - 3 # → 7
5.5 - 2.1 # → 3.4

* Multiplicación / Repetición

Con números: multiplica. Con string e int: repite el texto.

3 * 4 # → 12
"ja" * 3 # → "jajaja"

/ División — siempre float

Siempre retorna float, incluso si el resultado es exacto.

14 / 5 # → 2.8
10 / 2 # → 5.0 (¡float!)

// División entera

Divide y descarta los decimales. Retorna solo la parte entera.

14 // 5 # → 2
17 // 3 # → 5

% Módulo (resto)

El resto de la división entera. Con % 2 detectás si un número es par (resto = 0) o impar (resto = 1).

14 % 5 # → 4
10 % 2 # → 0 (par)
7 % 2 # → 1 (impar)

** Potencia

Eleva al exponente. Con 0.5 calcula raíz cuadrada.

3 ** 2 # → 9 (3²)
2 ** 10 # → 1024
9 ** 0.5 # → 3.0 (raíz)
Operadores relacionales
Comparan dos valores y siempre retornan bool (True o False).
OperadorSignificadoEjemploResultado
==Igual a3 == 3True
!=Distinto de"a" != "b"True
>Mayor que5 > 3True
<Menor que2 < 1False
Operadores lógicos
and
True solo si ambas son True.
True and False → False
or
True si al menos una es True.
True or False → True
not
Invierte el valor booleano.
not True → False
✦ Pregunta 2
💻 Probá en la Consola Libre: print(17 // 5) y luego print(17 % 5)
¿Cuáles son los resultados de 17 // 5 y 17 % 5?
A3.4 y 0.4
B3 y 2 (cociente entero y resto)
C4 y 1
🖥 Ejercicio 3 — Operadores Básico
Calculá y mostrá usando print():
1. El resto de dividir 29 entre 4
2. 2 elevado a la 8
3. Si 15 es divisible por 3 (el resto debe ser 0)

05 · Funciones incorporadas

Herramientas listas para usar

Imagina que una función es como una pequeña fábrica o máquina: le ingresas materia prima o "ingredientes" (llamados argumentos), la máquina hace un trabajo interno especializado, y te devuelve un producto final (el resultado). Python viene con un gran catálogo de funciones ya escritas listas para usar.

📄
Material complementario: Te compartimos un resumen de las funciones que hemos trabajado. ¡Anímate a probarlas en la consola Libre!
Funciones para números
round(n)
Redondea al entero más cercano. Con segundo argumento, al número de decimales.
round(3.7) → 4
round(3.1416,2) → 3.14
max(a, b, ...)
El valor más grande entre los argumentos.
max(5, 3, 8) → 8
min(a, b, ...)
El valor más pequeño entre los argumentos.
min(5, 3, 8) → 3
abs(n)
Valor absoluto (quita el signo negativo).
abs(-7) → 7
🖥 Ejercicio 4 — El Misterio: Huellas del sospechoso Fase Forense
El equipo forense ha dejado huellas cerca del cuerpo, registradas a diferentes distancias. Para descubrir quién es el sospechoso principal, necesitas analizar esos datos.

Tu tarea: Usa la función min() para identificar la huella más cercana y max() para encontrar la más lejana. Luego, imprímelas.
Funciones para strings (notación de punto)
Para strings, muchas funciones se escriben como cadena.metodo(). La función "pertenece" al string.
len(cadena)
Cantidad de caracteres (incluye espacios).
len("Hola mundo") → 10
cadena.upper()
Todo a mayúsculas.
"hola".upper() → 'HOLA'
cadena.strip()
Elimina espacios en los extremos.
" hola ".strip() → 'hola'
Conversión de tipos
FunciónConvierte aEjemplo
int(x)Enteroint("42") → 42
float(x)Flotantefloat("3.14") → 3.14
str(x)Textostr(42) → "42"
✦ Pregunta 3
💻 Ejecutá en la Consola Libre: print(len("¡Hola, mundo!"))
¿Cuántos caracteres tiene "¡Hola, mundo!"?
A11
B13
C10
🖥 Ejercicio 5 — Funciones de string Intermedio
Tenés frase = " hola, mundo! ". Con funciones de string:
1. Eliminá los espacios de los extremos (guardá en limpia y mostrá)
2. Mostrá limpia en mayúsculas
3. Mostrá cuántos caracteres tiene limpia

06 · Combinando todo

Expresiones y tipos mezclados

Las expresiones se evalúan paso a paso. Python resuelve las operaciones de adentro hacia afuera, como en matemática.

Con + los strings se concatenan (unen). Pero no podés sumar un string con un número directamente — necesitás convertir el número a texto con str().
# Concatenación — funciona "Hola, " + "mundo" # → "Hola, mundo" "Tengo " + str(18) + " años" # → "Tengo 18 años" # ¡Esto da error! str + int directo # "Tengo " + 18 → TypeError!
🖥 Ejercicio 6 — Perfil completo Desafío
Con nombre = "ana", edad = 22, puntaje = 98.7:
1. Mostrá el nombre con primera letra mayúscula (.capitalize())
2. Construí el mensaje usando concatenación (+) y str() para los números: "Edad: " + str(edad).
3. Mostrá si el puntaje es mayor o igual a 90.

07 · input()

El usuario habla: Recibir datos

Hasta ahora los datos estaban escritos en el código. input() permite que el programa le pida información al usuario mientras corre.

input("mensaje") muestra el mensaje en la pantalla, espera que el usuario escriba algo y presione Enter. ¡Atención! Siempre devuelve un String, aunque el usuario haya escrito un número.
1
Pedir el dato

nombre = input("¿Cómo te llamás? ")

2
Guardado como string

Aunque escribas 25, Python lo guarda como "25".

3
Convertir si necesitas operar

edad = int(input("¿Cuántos años tenés? "))

Si quieres hacer cálculos matemáticos con el valor ingresado, SIEMPRE debes envolver el input() en un int() o float().
✦ Pregunta 4
El usuario escribe 25 cuando le piden su edad con input(). ¿Qué pasa si después hacés print(edad + 5) sin haberlo convertido a int?
AMuestra 30 — Python detecta que es número
BDa TypeError — no se puede sumar str + int
CMuestra "255" — los concatena
🖥 Ejercicio 7 — Programa interactivo Desafío final
Escribí un programa interactivo que:
1. Pida el nombre del usuario con input().
2. Pida su nota y la convierta con float(input(...)).
3. Muestre un saludo uniendo textos y variables.
4. Muestre si la nota es mayor o igual a 6.
Consola de Pruebas

Escribe código aquí para probarlo libremente antes de responder los Quizzes.

Cargando motor de Python...