Reproducción automática
Autocompletar
Clase anterior
Completar y continuar
Curso de Introducción a la Programación desde Cero
Presentación del curso
Fichas teóricas, ejercicios y soluciones
Material Ejercicio del bot humano
Objetivos del curso (1) (1:56)
Objetivos del curso (y 2) (1:49)
Pensamiento Computacional. Qué es programar
Qué es programar 1 (5:53)
Qué es programar 2 - Programando a un humano - Cambio de rueda. (9:08)
Qué es programar 3 - Programando a un humano - Bot - Lenguaje de programación (4:42)
Qué es programar 4 - Programando a un humano - Bot - Enunciado ejercicio (1:33)
Qué es programar 5 - Programando a un humano - Bot - Realización del ejercicio (5:46)
Qué es programar 6 - El lenguaje de programación (2:02)
Qué es programar 7 - Conclusion (3:09)
Pensamiento computacional. Instalando nuestros IDEs
Instalando nuestros IDEs 1 - Qué necesitamos para programar (1:02)
Instalando nuestros IDEs 2 - Lenguajes de programación (1:20)
Instalando nuestros IDEs 3 - Qué es un IDE (1:49)
Instalando nuestros IDEs 4 - Thonny en mac (1:38)
Instalando nuestros IDEs 5 - Thonny en w10 (1:46)
Instalando nuestros IDEs 6 - Thonny en ubuntu (1:55)
Instalando nuestros IDEs 7 - Webmaker como webapp (1:55)
Instalando nuestros IDEs 8 - Webmaker como extensión en chrome (1:11)
Pensamiento Computacional - Nuestro primer programa - Hola mundo y algo más
Hola mundo con python - Print (2:05)
Hola personalizado con python - Input (1:44)
Hola personalizado con python - Variables (1:28)
Hola personalizado con python - Operador de asignación (2:20)
Hola personalizado con python - Programa finalizado (1:09)
Hola mundo con javascript - Empezando con web maker (1:36)
Hola mundo con javascript - El programa (alert) (1:06)
Hola mundo con javascript - Guardar el programa (0:55)
Hola personalizado con javascript - Crear nuevo proyecto (0:29)
Hola personalizado con javascript - La consola del navegador (0:22)
Hola personalizado con javascript - Prompt (0:54)
Hola personalizado con javascript - Creando variables (0:47)
Hola personalizado con javascript - null data (0:59)
Hola personalizado con javascript - Programa finalizado (0:53)
Conclusiones - salvar y comparar solución javascript y python (0:57)
Conclusiones - input (py) vs prompt (js) (0:56)
Conclusiones - print (py) vs alert( js) (0:33)
Conclusiones - concatenación de literales en nuestro programa. Diferencias py vs js (0:58)
Conclusiones - los dos programas juntos (py vs js) (0:43)
Conceptos básicos de programación I - Resumen de lo aprendido
Elementos de un programa y estructuras de control (0:38)
Elementos de un programa vistos hasta ahora: Instrucciones, datos, operadores y variables (1:37)
Estructuras de control vistas hasta ahora: Secuencia en el programa en python (1:52)
Estructuras de control vistas hasta ahora: Secuencia en programa javascript (1:31)
Pensamiento Computacional - Segundo programa ¿En qué año naciste?
Planteamiento del problema (1:50)
Pseudocódigo I (2:39)
Pseudocódigo II (2:21)
De pseudocódigo a código (1:59)
Nuestro primer error - Anatomía de la traza de error (1:59)
Tipos de datos primitivos en python 1 - str e int (1:49)
Tipos de datos primitivos en python 2 - str e int (1:35)
Conversión de tipos o type casting 1 (1:09)
Conversion de tipos o type casting 2 (1:37)
Segundo programa. Funciona (0:31)
Segundo programa. 1ª mejora, aun no he cumplido (0:44)
Segundo programa. Pseudocódigo 1ª mejora (1:59)
Segundo programa. Dato nuevo. Has cumplido (1:59)
Segundo programa. Nueva estructura de control 1. IF - Seleccion (1:50)
Segundo programa. Nueva estructura de control 2. IF - ELSE (1:51)
Segundo programa. Segunda versión también funciona (0:58)
Segundo programa en javascript - introducción (0:52)
Segundo programa en javascript - resta de cadenas en javascript (2:33)
Segundo programa en javascript - todo el código (2:11)
Segundo programa en javascript - Anatomía de un error y por fin funciona (1:44)
Segundo programa. Nuevo tipo de datos - Booleanos (1:07)
Operando con booleanos - asignación (1:15)
Operando con booleanos - operadores (1:47)
Operando con booleanos - comparaciones (1:27)
Segundo programa. ¿Funciona? (1:55)
Conceptos básicos de programación II - Resumen de lo aprendido
Elementos de un programa - trabajando con distintos tipos de datos (1:09)
Estructuras de control - la selección y el bloque de código (0:35)
Pensamiento Computacional - Tercer programa - Cuanto me retendrán de IRPF(solo IFs)
Enunciado del problema (1:55)
Análisis del problema - Del enunciado al papel (0:39)
Análisis del problema - Determinando el tramo de retención (1:48)
Análisis del problema - Exencion y sueldo a retener (1:37)
Análisis del problema - Retención anual (0:40)
Análisis del problema - Retención mensual (0:32)
Análisis del problema - Creando mi primer juego de pruebas (1:20)
Análisis del problema - Pseudocódigo I (2:00)
Análisis del problema - Pseudocódigo II (1:59)
Análisis del problema - Pseudocódigo III (1:08)
Análisis del problema - Pseudocódigo Exenciones I (1:47)
Análisis del problema - Pseudocódigo Exenciones II (2:07)
Análisis del problema - Pseudocódigo Exenciones III (1:21)
Primera versión - Obtener exención I (1:14)
Primera versión - Obtener exención II (1:46)
Primera versión - Probándola (0:55)
Primera versión - Exención por defecto (0:44)
Análisis del problema - Tabla de retenciones (1:52)
Análisis del problema - Pseudocódigo retenciones (1:19)
Segunda versión - Obtencion de porcentaje de retención (1:26)
Segunda versión - Probando el código (con nuestro juego de pruebas) (1:33)
Tercera versión - funcionalidad completa (1:55)
Tercera versión en Javascript - Editor y configuración para <= (1:09)
Tercera versión en javascript - Obtener exencion situacion 1 (2:02)
Tercera versión en javascript - Primera prueba (0:30)
Tercera versión en javascript - Sueldo a retener (2:00)
Tercera versión en javascript - Porcentaje de retencion (1:49)
Tercera versión en javascript - Últimos cálculos (1:59)
Tercera versión javascript - Funcionalidad completa (0:37)
Tercera versión javascript - conclusión diferente manejo de tipos y diferente sintaxis (0:29)
Conclusiones - ¿Se puede mejorar? (2:00)
Conceptos básicos de programación III - Resumen de lo aprendido
Elementos y estructuras de control. IF anidados y números flotantes (0:44)
Estrategias de resolución de problemas. Descomposición y abstracción (1:07)
Pensamiento computacional - Cuarto programa Iteraciones y listas - Qué posición en el año guarda el día de hoy
Cuarto programa - Planteamiento del problema (0:28)
Cuarto programa - Disección de la solución (0:59)
Cuarto programa - Pseudocódigo con IFs (2:43)
Cuarto programa - Código en python (2:02)
Cuarto programa - Probandolo hasta que funcione (1:16)
Cuarto programa - Introducción a listas en python (1:56)
Cuarto programa - Las listas comienzan en la posicion 0 (1:35)
Cuarto programa - Disección de la solución con una lista (2:20)
Cuarto programa - Pseudocodigo iteracion - GOTO 1 (1:37)
Cuarto programa - Pseudocódigo iteración - GOTO 2 (3:43)
Cuarto programa - Pseudocódigo iteración - GOTO 3 (0:38)
Cuarto programa - Del if+goto al while 1 - Pseudocódigo limpio (1:03)
Cuarto programa - Del if+goto al while 2 (2:04)
Cuarto programa - Python (2:45)
Cuarto programa - Probando python (1:04)
Cuarto programa - Javascript (2:19)
Cuarto programa - probando javascript - parseInt (1:51)
Conceptos básicos de programación IV - Resumen de lo aprendido
Datos complejos (listas) e iteraciones (while) (1:42)
Pensamiento Computacional - Cuarto programa (funciones) - Qué posición en el año guarda el día de hoy
Planteamiento del problema - reconocer años bisiestos (0:41)
Pseudocódigo - Comprobar que es bisiesto cambia la lista (1:16)
Pseudocódigo - Función comprobar bisiesto (1:16)
Criterios para saber si un año es bisiesto - inicio de pseudocodigo (1:07)
Criterios para saber si un año es bisiesto - operadores de división en python (1:46)
Pseudocódigo funcion es_bisiesto (2:04)
Como se crea una función en python 1 - es_bisiesto (1:09)
Como se crea una función en python y 2 - es_bisiesto (2:01)
Invocando una función en python - es_bisiesto (1:21)
Probando la función en python (1:54)
El programa funciona y tiene una función (1:26)
El programa en javascript - Definiendo la función esBisiesto (1:15)
El programa en javascript - Invocando la función esBisiesto (2:04)
El programa en javascript - Funciona (0:57)
Conceptos básicos de programación V - Resumen de lo aprendido
Funciones. Bloques de código con etiqueta, parametros y que devuelven un resultado (0:18)
Conclusión a esta introducción de que es programar (2:48)
Pensamiento Computacional, herramientas - Estructura de un ordenador
El ordenador (6:21)
Memoria (4:24)
Lenguajes de programación (12:14)
Python a máquina (16:26)
Simulando un procesador (20:37)
Pensamiento computacional, herramientas - Manejo básico de la consola
windows 10, linux/mac - introducción (1:16)
windows 10 - que es un comando. Ej DIR (1:54)
windows 10 - Documentación sobre los comandos HELP (0:28)
windows 10 - CD cambiando de directorio (2:05)
windows 10 - MD creando un directorio - El uso de la tecla TAB (0:42)
windows 10 - Haciendo visibles las extensiones (1:39)
windows 10 - REN renombrando archivos (0:37)
windows 10 - RMDIR y DEL, borrando carpetas y archivos (1:44)
linux/mac - introducción y PWD (1:08)
linux/mac - LS contenido de un directorio (0:47)
linux/mac - CLEAR y MAN. Borrar pantalla e información sobre un comando (1:42)
linux/mac - CD. Moverse entre directorios (1:55)
linux/mac - CD 2. La carpeta del usuario activo (1:06)
linux/mac - MKDIR. Crear directorios (2:00)
linux/mac - RM - r. Borra directorios (0:51)
linux/mac - MV. Renombra ficheros. RM. Borra ficheros (1:09)
Fundamentos de programación I - DATOS PRIMITIVOS - Trabajando con números
¿Como almacena los números un ordenador? - La pascalina (1:57)
¿Como almacena los números un ordenador? - Suma pascalina (1:08)
¿Cómo almacena los números un ordenador? - Dígito y acarreo (1:50)
¿Cómo almacena los números un ordenador? - La electrónica solo permite ceros y unos. (0:46)
Sistema de numeración decimal - como funciona y origen (2:51)
Sistema de numeración decimal - como funciona 2 (0:43)
Como cuentan los Simpson - sistema de numeración octal (2:01)
Como cuentan los Simpson - Su abaco ruso (1:17)
Como cuentan los Simpson - Unidades (1:46)
Como cuentan los Simpson - Decenas (1:09)
Como cuentan los Simpson - Cada posición multiplica x 8 (1:24)
Como cuentan los Simpson - El valor real de 276 en octal (2:00)
Como cuentan los Simpson - Valor real de cualquier número en cualquier base (1:18)
Sistemas de numeracion de diferente base - representación del 15 (1:35)
Sistemas de numeración de diferente base - contador automático (1:14)
Los ordenadores funcionan en binario - El bit y el byte (2:04)
Almacenar un valor y el acarreo son la base de una calculadora (0:43)
Operadores aritméticos 1 (1:49)
Operadores aritméticos 2 (1:57)
Precedencia de operadores (1:51)
Números enteros: tipo int (1:19)
Números reales: tipo float 1 - Su imprecisión (2:00)
Números reales: tipo float y 2 - Alternativas a su imprecisión (1:27)
Números complejos - Fuera de alcance (0:21)
Fundamentos de programación I - DATOS PRIMITIVOS - Trabajando con textos (cadenas)
Introducción. ¿Como guardamos un texto en binario? Hablemos de morse. (1:52)
ASCII viene de morse (2:03)
ASCII en binario (1:16)
De ASCII a ASCII extendido (1:59)
De ASCII extendido a UNICODE (UTF) (1:36)
Imprimiendo en japonés (2:09)
Tipo primitivo String (cadena). Uso de comillas (1:15)
Posición de un caracter en una cadena [] (1:15)
Extrayendo subcadenas [:] (1:54)
Posicion de un caracter desde el final. Indices negativos [-n] (1:47)
Ejemplos de subcadenas con indices negativos [:] (2:05)
Salteando cadenas [: :] (1:59)
Invirtiendo cadenas y recorriendolas hacia atrás (1:48)
Iterando sobre cadenas. for caracter in cadena (0:43)
Ejemplo de iteracion. Extrae vocales (1:27)
Operador in. Comprobar que una cadena está en otra (0:37)
Métodos de cadena (0:29)
Métodos upper y lower (0:59)
Método replace (1:12)
Métodos de cadena. Documentación (0:57)
Método format. Como funciona (1:54)
Método format. Minilenguaje (0:38)
Método format. Uso básico y posicional (1:38)
Método format. Modificadores (1:56)
Método format. Tabla de multiplicar (1:40)
Método format. Tabla de multiplicar y 2 (0:48)
Ejercicio palíndromos: Palabras (1:05)
Ejercicio Palíndromos: Frases (1:30)
Ejercicio palíndromos: Planteamiento (0:48)
Ejercicio palíndromos: Código python (1:53)
Ejercicio palíndromos: Pruebas (1:20)
Ejercicio Saca vocales: planteamiento (0:26)
Ejercicio Saca vocales: código py (1:07)
Ejercicio Saca vocales: pruebas (0:26)
Fundamentos de programación I - DATOS PRIMITIVOS - Entendiendo los booleanos
Necesidad de booleanos (0:50)
Qué es un booleano (0:38)
Cuando se crea un booleano en python (1:20)
Todos los objetos de python pueden actuar como bool 1 (1:10)
Todos los objetos de python pueden actuar como bool 2 (1:39)
Booleanos: Operadores (0:17)
Fundamentos de programación I - DATOS COMPLEJOS en python
Diapositivas
Datos primitivos vs complejos. Primitivos (1:09)
Datos primitivos vs complejos. Datos complejos (0:47)
Tuplas. Definición y creación (1:50)
Tuplas. Acceso a sus elementos (0:37)
Tuplas. Son inmutables (0:14)
Listas. Definición y creación (1:02)
Listas y tuplas no sólo son para cadenas. (1:06)
Listas. acceso por posición (0:21)
Listas. Son mutables (0:21)
Listas. Métodos (0:57)
Listas. Métodos 2 (1:21)
Listas y tuplas. Iteración (0:42)
Diccionarios. Definición y creación (1:45)
Diccionarios. No solo es para cadenas (0:42)
Diccionarios. Acceso [] y get (1:02)
Diccionarios. Iteración (1:28)
Diccionarios. Iteración y 2 (1:03)
Conjuntos. Definición y creación (1:30)
Conjuntos. Definición y creación y 2 (0:38)
Conjuntos iteración (0:47)
Conjuntos. Comprobar pertenencia (0:30)
Conjuntos. Métodos pop() (1:10)
Conjuntos. Métodos remove (0:46)
Conjuntos. Métodos discard y clear (0:22)
Conjuntos. Métodos update (0:59)
Conjuntos. Métodos: add (0:47)
Función es_anagrama. Requisitos (1:19)
Función es_anagrama. Planteamiento (1:45)
Función es_anagrama. Casos de prueba (1:25)
Función es_anagrama. Planteamiento función tacha. (1:13)
Función es_anagrama. Planteamiento tacha con string (1:57)
Función es_anagrama. Pasar de cadena a lista (1:03)
Función es_anagrama. Pasar de lista a cadena. (1:27)
Función es_anagrama. Método join de cadenas. (1:53)
Función es_anagrama. Pseudocódigo (0:52)
Función es_anagrama. Código función tacha (2:04)
Función es_anagrama. Las tuplas no sirven (0:43)
Función es_anagrama. Función completa 1 (1:54)
Función es_anagrama. Función completa 2 (1:29)
Función es_anagrama. Pruebas función con listas (1:44)
Función es_anagrama. Planteamiento con diccionarios (1:38)
Función es_anagrama. Pseudocódigo con diccionarios (0:54)
Función es_anagrama. Pseudo obtener_dict (1:07)
Función es_anagrama. Repeticiones de letras en obtener_dict (1:25)
Función es_anagrama. Pruebas en obtener_dict (1:55)
Función es_anagrama. Comparar diccionarios (0:34)
Función es_anagrama. Versión final con diccionarios (1:55)
Función es_anagrama. Pruebas versión diccionarios (1:25)
Función es_anagrama. Los conjuntos no sirven (1:22)
Función es_anagrama. Conclusión (0:32)
Fundamentos de programacion I - Iteraciones INTRO Y WHILE
Que es una iteracion (0:54)
Tipos de iteracion (0:24)
Bucles de tipo WHILE (o until) (1:50)
Bucles de tipo DO WHILE (o do until) (1:20)
Bucles de tipo FOR (o repeat) (0:47)
funcion nota_numerica. El problema (0:58)
funcion nota_numerica. Análisis (disección) de la solución (1:55)
funcion nota_numerica. Pseudocódigo I (1:31)
funcion nota_numerica. Pseudocódigo II (2:26)
funcion nota_numérica - Pseudocódigo III (1:06)
función nota_numérica en python - Escribir programa (1:54)
función nota_numérica en python - Probando el programa (0:55)
función nota_numérica en javascript - Código (1:18)
función nota_numérica en javascript - probando - bucles infinitos (1:19)
funcion nota_numérica en javascript - por qué un bucle infinito 1 (2:00)
funcion nota_numerica javascript. La comparación fuera de rango en python da ERROR (0:27)
funcion nota_numerica javascript. La comparacion fuera de rango en javascript da UNDEFINED (1:01)
funcion nota_numerica en javascript - por qué un bucle infinito y 4 (1:02)
funcion nota_numerica en javascript - condicion adicional Array.length (0:54)
funcion nota_numerica en javascript - funciona (0:37)
Programa cálculo de la media de un alumno - El problema (1:15)
Programa cálculo de la media de un alumno - Análisis (disección) del problema (2:32)
Programa cálculo de la media de un alumno - Pseudocódigo - Tratando la primera nota con un IF (1:58)
Programa cálculo de la media de un alumno - Pseudocódigo - Del IF al WHILE (0:57)
Programa cálculo de la media de un alumno - Pseudocódigo - Calcular Media (0:40)
Programa cálculo de la media de un alumno - Python - primera versión (1:59)
Programa de cálculo de la media de un alumno - Python - Juego de pruebas (1:25)
Programa de cálculo de la media de un alumno - Python - Primera ejecución con errores (1:30)
Fundamentos de programacion I - ANEXO I - Errores y Excepciones en python
Errores de sintáxis en python (1:38)
Excepciones en python (0:57)
Captura de excepciones en python - try except (1:37)
Captura de excepciones por tipo en python - try except (1:46)
Lanzamiento de excepciones por el programador en python. raise (0:37)
Gestion de errores en javascript - INTRO (0:44)
Gestion de errores en javascript - Syntax error vs el resto (1:46)
Captura de errores en javascript - try catch escritura (1:37)
Captura de errores en javascript - try catch pruebas (1:11)
Lanzamiento de errores ad hoc javascript - throw (1:55)
CONCLUSION - Como funcionan las excepciones en python, javascript (1:53)
Fundamentos de programacion I - Iteraciones WHILE (continuación)
Programa cálculo de la media de un alumno con excepciones - planteamiento del problema (0:49)
Usando try-except python 1 (2:23)
Usando try-except python 2 (0:47)
python Sigue fallando - no acepta minúsculas (0:47)
python Solución a minúsculas. STRING.UPPER() (1:52)
python Sigue fallando si no hay datos. Uso del DEBUGGER (1:33)
python Programa finalizado y probado (2:12)
javascript Modificar notaNumerica para que de error 1 (0:47)
javascript Modificar notaNumerica para que de error 2 (1:18)
javascript Crear bucle while (2:27)
javascript Calcular y presentar media (0:57)
javascript Probando el programa 1 (tiene un error y un caso adicional) (1:45)
javascript Probando el programa - problemas con null (1:03)
javascript Probando el problema - evitando el null (1:25)
RESUMEN: bucle While (1:22)
Fundamentos de programación I - Iteraciones FOR (repeat)
Bucles FOR - Presentacion (1:03)
Programa de la nota media, variación for - planteamiento (1:01)
Programa de la nota media, variación for - planteamiento - análisis (pseudocódigo) (1:59)
Programa de la nota media, variación for - planteamiento - análisis (pseudocódigo) y 2 (1:33)
Programa de la nota media, variación for - python 1 (0:56)
Programa de la nota media, variación for - python 2 (RANGE) (1:40)
Programa de la nota media, variación for - python 3 (1:32)
Programa de la nota media, variacion for - primeras pruebas (0:59)
Programa de la nota media, variación for - nuevos juegos de pruebas (0:46)
Programa de la nota media, variación for - todas las pruebas. El programa falla. (0:53)
Programa de la nota media, variación for - Resolviendo 3er caso de prueba (0:14)
Programa de la nota media, variación for - 3er caso de prueba OK (1:59)
Programa de la nota media, variación for - Resolviendo 4º caso de prueba (1:11)
Programa de la nota media, variación for - 4º caso de prueba OK (0:43)
Programa de la nota media, variacion for - Resolviendo 2º caso (1:56)
Programa de la nota media. Validando entrada por consola con WHILE (pseudocodigo) (2:14)
Programa de la nota media. Validando entrada por consola con WHILE (pseudocódigo 2) (1:39)
Programa de la nota media. Validando entrada por consola con WHILE (pseudocódigo y 3) (1:24)
Programa de la nota media. Validando entrada por consola con WHILE (repaso) (1:26)
Programa de la nota media. Funcion pedir_nota_correcta python (1:56)
Programa de la nota media. Modificar el programa para usar pedir_nota_correcta python (0:40)
Programa de la nota media. Probando la funcion pedir_nota_correcta (1:35)
Programa de la nota media. Prueba OK pedir_nota_correcta (2:04)
Programa de la nota media. Entrada datos consola con while. CONCLUSION (0:39)
Programa de la nota media. Todas pruebas OK. (0:58)
Programa de la nota media. Un error nuevo (1:17)
Programa de la nota media. Funcion pedir_numero (1:59)
Programa de la nota media. Probando pedir_numero (0:57)
Programa de la nota media. Version final (1:31)
For en python. Iterables (1:15)
Fundamentos de programación I - Funciones, ámbito de una variable y parámetros posicionales y por defecto
Repaso de qué es una función. Visto hasta ahora (0:28)
Como interpreta las funciones python (1:41)
Qué significa ejecutar (invocar) una función (1:47)
Funciones python sin paréntesis (1:57)
Invocando funciones en la consola de python (1:46)
Invocando funciones en la consola de python y 2 (2:12)
IMPORT en python. Creando mis_funciones.py (1:20)
import en python. Usando mis_funciones.py (1:59)
import en python. Usando mis_funciones.py y 2 (1:45)
import en python. Un programa, dos ficheros (0:44)
import en python. Probando el código (0:59)
import en python. Primera aproximación. Conclusión (0:20)
PARÁMETROS POSICIONALES de una función. Función hipotenusa - inicio (1:00)
hipotenusa.py. La función math.sqrt como encontrarla (2:00)
hipotenusa.py. Como funciona una funcion (repaso) (1:58)
hipotenusa.py. Parámetros de una función (siempre por copia) (1:32)
hipotenusa.py. Los parámetros solo existen dentro de la función (1:36)
hipotenusa.py. Ámbito local y global de una variable 1 (2:00)
hipotenusa.py. Ámbito local y global de una variable conclusión (0:57)
hipotenusa.py. Usando el debugger. Distinguiendo ámbitos (2:11)
hipotenusa.py. Usando el debugger. Ámbito local (2:06)
hipotenusa.py. En python todo son variables (0:51)
hipotenusa.py PARAMETROS POSICIONALES fin (1:04)
hipotenusa.py PARAMETROS POR DEFECTO inicio (0:29)
hipotenusa.py El problema del cartabón (0:17)
hipotenusa.py. Primera solución al cartabón. Función hcartabon (0:59)
hipotenusa.py. Segunda solución al cartabón. Función llama a función (0:34)
hipotenusa.py. Tercera solución, número de parámetros variables (0:46)
hipotenusa.py. Tercera solución. El problema (0:52)
hipotenusa.py. Tercera solución. Pseudocódigo (0:37)
hipotenusa.py. Tercera solución. Código py (0:53)
hipotenusa.py Tercera solución. Probando el código (1:52)
hipotenusa.py Los parámetros posicionales pueden cambiar de orden (1:57)
ANEXO: hcartabon Función llama a función con el debugger 1 (0:39)
ANEXO: hcartabon Función llama a función con el debugger 2 (1:46)
ANEXO: hcartabon Función llama a función con el debugger y 3 (0:59)
Fundamentos de programación I - Funciones con un número variable de parámetros - *ARGS
Presentación (1:59)
funcion media. Juego de pruebas inicial (2:00)
funcion(*args) → args es una lista local (I) (1:42)
funcion(*args) → args es una lista local (y 2) (0:45)
Ejemplo multientrada con tres argumentos (1:30)
Misma función con 5 argumentos y sin argumentos (0:41)
Forzando a una función de parámetros variables a aceptar una lista como parámetro (1:57)
funcion media(*notas) 1 (0:46)
funcion media(*notas). Anexo, from file import func (1:37)
funcion media(*notas) 2 (1:34)
funcion media(*notas). ¿Que pasa si la llamamos sin parámetros? (1:02)
funcion media(*notas). Probando la función. Primer error (1:28)
funcion media(*notas). Probando la función. Final (1:57)
Conclusión. Funciones con un número variable de parámetros (1:02)
Fundamentos de programación I - Funciones con un número variable de parámetros - **KWARGS
Presentación - La función boletín (2:00)
funcion(**kwargs) → kwargs es un diccionario local (I) (1:31)
funcion(**kwargs) → kwargs es un diccionario local (II) (1:42)
funcion(**kwargs) → kwargs es un diccionario local (y 3) (1:04)
función boletin - imprime asignaturas y notas (1:32)
función boletin - calcula la media también (primera forma) (1:46)
función boletin - calcula la media también (segunda forma) (1:53)
Forzando a una función de tipo **kwargs a aceptar un diccionario como argumento (1:52)
Conclusión. Funciones con un número variable de parámetros (**kwargs) (1:59)
Fundamentos de programación I. Integrando lo aprendido. Funciones
Presentación (0:58)
Retomar donde lo dejamos (algoritmo y versión inicial) (1:58)
Iteraciones y datos complejos en lugar de selecciones. (0:33)
Creando una función para obtener exencion (1:13)
Obtener exención. Extraer la función. (1:15)
Obtener exención. Probar la función. (1:18)
Obtener exención. Ajustar los parámetros. (1:26)
Obtener exención. Necesitamos un return. (0:46)
Obtener exención. Pruebas unitarias finales. (0:54)
Obtener exención. Integrar la función en mi programa. (2:01)
Obtener exención. Probar integración y fin. (0:34)
Creando la función Obtener retención. Extraemos. (1:44)
Obtener retención. Ajustando los parámetros. (1:30)
Obtener retención. Pruebas unitarias. ¿Qué pasa con los negativos? (1:09)
Obtener retención. Pruebas unitarias finales. (1:18)
Obtener retención. Probar integración y fin. (1:50)
El programa está más ordenado pero sigue igual de largo. (1:26)
Fundamentos de programación I. Anexo II - Uso de módulos (ficheros)
Qué son y para qué los usamos. (1:13)
Módulos. Importando funcionalidad (import) (1:14)
Import necesita de prefijos (1:13)
Módulos. El porqué de los prefijos (espacios de nombres) (1:54)
Módulos. Pruebas de nuestro módulo. Algunas ventajas del uso de módulos. (1:52)
Módulos. Otra forma de uso de import. from modulo import ... (2:09)
Módulos. Utilización de las funciones fuera de mi programa. (1:21)
Módulos. Cambiando a from import en nuestro programa. (1:36)
Módulos. Conclusión. (0:42)
Módulos. Anexo. ¿Como encuentra python los módulos? I (1:24)
Módulos. Anexo. ¿Como encuentra python los módulos? I (1:13)
Módulos. Anexo. ¿Como encuentra python los módulos? I (1:56)
Fundamentos de programación I. Integrando lo aprendido. Estructuras de datos e iteraciones
Mejorar nuestras funciones con estructuras de datos e iteraciones. (0:39)
Vuelta al origen. Repasamos el problema y nuestra solución. (1:42)
Búsqueda de un valor en una tabla. Entendiendo el problema. (1:56)
Búsqueda de un valor en una tabla. Pseudocódigo. (3:26)
Búsqueda de un valor en una tabla. Probando mentalmente el pseudocódigo. (2:02)
Búsqueda de un valor en una tabla. Añadimos el valor de otra tabla. (1:30)
Búsqueda de un valor en una tabla. Versión final. (1:05)
Obtener_exención con tablas. Crear las listas. (1:25)
Obtener_exención con tablas. De pseudocódigo a código. (2:00)
Obtener_exención con tablas. Probar nuestra función. (1:32)
Obtener_exención con tablas. Caso final. ¿Por qué funciona? (3:45)
Obtener_exención con tablas. Usando el debugger. (0:55)
Usando el debugger. Step into (1:28)
Usando el debugger. Sigue hasta el siguiente punto de ruptura. (2:01)
Obtener_exención con tablas. Refinar la función. (1:32)
Obtener_exención con tablas. Cambiando de while a for. (1:58)
Obtener_exención con tablas. Tablas con más de una columna pueden ser listas de listas. (0:51)
Obtener_exención con tablas. Lista de listas en Python. Estructura. (1:13)
Obtener_exención con tablas. Lista de listas en Python. Acceso. (1:13)
Obtener_exención con tablas. Crear la lista de listas. El problema de infinito. (1:23)
Obtener_exención con tablas. Accediendo a elementos en la consola. (1:22)
Obtener_exención con tablas. Cambiar el for para acceso a lista de listas. (2:04)
Obtener_exención con tablas. Versión final. (0:30)
Obtener_exención con tablas. Probando la versión final. (1:38)
Obtener_exención con tablas. Importancia de buenas estructuras de datos. (1:01)
Obtener retención. Primera aproximación con tres listas. (1:22)
Obtener retención. Pseudocódigo, obtención. (1:57)
Obtener retención. Crear listas en Python. (1:11)
Obtener retención. Crear función en Python. (1:07)
Obtener retención. Probar la función en Python. (2:00)
Obtener retención. Mejorar la estructura. Diccionario de listas. (1:21)
Obtener retención. Ventajas de esta estructura. (1:42)
Obtener retención. Modificar la función para acceso a diccionario de listas. (1:30)
Obtener retención. Gestión del error. Tú decides. (1:23)
Módulo f_retenciones Versión final. (1:37)
Módulo f_retenciones. Pruebas de integración en nuestro programa. (1:20)
Módulo f_retenciones. Mejorando legilibilidad, uso de constantes. (0:57)
Módulo f_retenciones. Mejorando legilibilidad. For con varias variables. (2:02)
Retención de IRPF. Conclusión con funciones, iteraciones y estructuras de datos. (1:51)
Fundamentos de programación I - Persistencia (ficheros)
Qué es la persistencia (2:58)
Nombre de un fichero (2:59)
Donde está el fichero. Comandos de OS en thonny (2:56)
Abriendo ficheros I (4:48)
Abriendo ficheros II (1:05)
Cerrando ficheros (0:43)
Leer ficheros. fichero.read (1:53)
Leer ficheros. El puntero de lectura (1:49)
Leer ficheros. fichero.readline (1:28)
Leer ficheros. Iterando la lectura con for (1:14)
Leer ficheros. fichero.readlines (0:39)
Escribir ficheros. fichero.write (3:06)
Escribir ficheros. modo w vs modo a (1:00)
Ejercicio cambia palabra en fichero. (7:01)
Fundamentos de programación II - Visual Studio Code - Un IDE profesional
Resumen de lo avanzado (2:23)
Cambio a un IDE profesional. Visual Studio Code (2:08)
Instalación VSC en windows (2:20)
Instalación VSC en mac (2:08)
Instalación VSC en ubuntu (3:03)
Preparar el entorno para python: extensión (2:27)
Preparar el entorno para python: bracket colorizer (1:16)
Primer proyecto. Cambiando el terminal en windows (1:37)
Primer proyecto. Crear la carpeta (2:04)
Primer proyecto. Crear el programa (0:57)
Primer proyecto. Ejecutar el programa (0:29)
Usando el debugger. Puntos de ruptura (0:50)
Usando el debugger. Fichero launch.json (1:15)
Usando el debugger. Barra herramientas - botones - (1:10)
Usando el debugger. Panel lateral (0:51)
Usando el debugger. Ejecutar (1:29)
Fundamentos de programación II - Programación Funcional
Funciones de primera clase: Introfucción (2:49)
Funciones de primera clase: ¿Qué son? (0:55)
Funciones de primera clase: creando funciones de trabajo (4:56)
Funciones de primera clase: asignándolas a variables (3:42)
Funciones de primera clase: asignándolas a estructuras de datos (9:23)
Funciones de orden superior: ¿Qué son? (0:58)
Funciones de orden superior- Inciso: Arreglando el módulo funciones (2:00)
Funciones de orden superior: Funciones como parámetros de otras funciones (7:05)
Funciones de orden superior: Funciones como resultado de otras funciones, Cifrado CESAR (3:00)
Funciones de orden superior: Cifrado CESAR, análisis - pseudocódigo - (10:16)
Funciones de orden superior: creando cifrado de caracter, error con la Z (4:47)
Funciones de orden superior: creando cifrado de caracter, solucion resto - pseudocodigo - (8:31)
Funciones de orden superior: creando cifrado de caracter, solucion resto en Python (1:44)
Funciones de orden superior: creando cifrado de frase (6:05)
Funciones de orden superior: Una función que devuelve otra función al rescate (10:59)
Funciones de orden superior: Funcionamiento al detalle (8:43)
Introducción a funciones anónimas, map, filter y reduce (1:25)
Funciones anónimas: ¿Qué son? (1:33)
Funciones anónimas: Jugando con sumatorios (10:34)
Funciones anónimas: Lambda, anatomía (1:28)
Funciones anónimas: Sumatorio general (4:10)
Operadores map, filter, reduce: Introducción (1:57)
Operador map: ¿Cómo funciona? (2:35)
Operador map: ejemplos (6:51)
Operador filter: ¿Cómo funciona? (3:38)
Operador filter: otros ejemplos (7:53)
Operador reduce: ¿Cómo funciona? (3:37)
Operador reduce: ejemplo sumatorio. La importancia del iniciador (12:08)
Recursion: ¿Qué es? (8:04)
Recursión: consulta y cambio del limite de recursion (5:26)
Recursión: porqué no es eficiente en python (7:07)
Recursión: ejemplo, más sumatorios (2:59)
Fundamentos de programación II - Programcion Orientada a objetos - Clases, instancias, Herencia (polimorfismo)
Necesidad de la POO, planteamiento (6:03)
Necesidad de la POO, el contador de clicks. Planteamiento y creación con PF - closure y nonlocal - (7:22)
Necesidad de la POO, el contador de clicks. Reutilización e inicialización. La idea de estado (4:05)
Necesidad de la POO, el contador de clicks. Un prototipo con PF - análisis - (4:32)
Necesidad de la POO, el contador de clicks. Un prototipo con PF - código 1, Funcion clic - (4:08)
Necesidad de la POO, el contador de clicks. Un prototipo con PF - código 2, Funcion consulta - (3:55)
Necesidad de la POO, el contador de clicks. Un prototipo con PF - código 3, Funcion reset - (5:05)
Necesidad de la POO, el contador de clicks. Un prototipo con PF - código 4, control de errores y refactorización - (5:50)
Necesidad de la POO, el contador de clicks. Conclusión (8:09)
Necesidad de la POO, el contador de clicks. Versión Final (5:14)
Conceptos básicos. el contador de click como clase python (13:51)
Repaso antes de jugar con clases python. (7:44)
Jugando con clases python. Una academia tiene Alumnos (3:06)
La clase alumno en python. ¿Qué hace class? (6:35)
La clase alumno en python. Entonces, ¿qué hace __init__? ¿qué es self? (9:44)
La clase alumno en python. Construcción y pruebas (2:13)
La clase alumno en python. Atributos de clase y de instancia (11:04)
La clase alumno en python. Los métodos __str__ y __repr__ (8:09)
La clase alumno en python. Diseño y construcción (7:27)
La clase alumno en python. Un alumno asiste a una o más Asignaturas - composición de objetos 1- (13:46)
La clase alumno en python. Un alumno asiste a una o más Asignaturas - composición de objetos 1- (5:26)
La clase profesor en python. Diseño y construcción (11:39)
La clase profesor en python. @ property, atributos calculados (7:31)
Herencia. Profesor y alumno son personas - presentación (5:56)
Herencia. Clase padre o superclase. Persona y Alumno (11:11)
Herencia. Profesor como subclase de Persona (8:22)
Herencia. Caso especial __str__ y __repr__ (8:41)
Conclusión de objetos (1:55)
funcion nota_numérica en javascript - por qué un bucle infinito 1
Contenidos de la clase bloqueados
Si ya estás inscrito
Necesitarás hacer log in
.
Inscribirse en el curso para desbloquear