CursosEmpresasBlogLiveConfPrecios

Reto final: Juego del Ahorcado o Hangman Game

Clase 20 de 21 • Curso de Python Intermedio: Comprehensions, Lambdas y Manejo de Errores

Clase anteriorSiguiente clase

Contenido del curso

Preparación antes de empezar
  • 1
    Algunas cosas que aprenderás sobre Python en este curso

    Algunas cosas que aprenderás sobre Python en este curso

    01:36
  • 2
    El Zen de Python

    El Zen de Python

    08:30
  • 3
    ¿Qué es la documentación?

    ¿Qué es la documentación?

    04:33
Entorno virtual
  • 4
    ¿Qué es un entorno virtual?

    ¿Qué es un entorno virtual?

    03:56
  • 5
    El primer paso profesional: creación de un entorno virtual

    El primer paso profesional: creación de un entorno virtual

    08:30
  • 6
    Instalación de dependencias con pip

    Instalación de dependencias con pip

    09:53
  • quiz Entorno virtual

Alternativa a los ciclos: comprehensions
  • 7
    Listas y diccionarios anidados

    Listas y diccionarios anidados

    12:32
  • 8
    List comprehensions

    List comprehensions

    07:39
  • 9
    Dictionary comprehensions

    Dictionary comprehensions

    06:00
  • quiz Alternativa a los ciclos: comprehensions

Conceptos avanzados de funciones
  • 10
    Funciones anónimas: lambda

    Funciones anónimas: lambda

    05:42
  • 11
    High order functions: filter, map y reduce

    High order functions: filter, map y reduce

    10:40
  • 12
    Proyecto: filtrando datos

    Proyecto: filtrando datos

    14:35
  • quiz Conceptos avanzados de funciones

Manejo de errores
  • 13
    Los errores en el código

    Los errores en el código

    08:54
  • 14
    Debugging

    Debugging

    12:27
  • 15
    Manejo de excepciones

    Manejo de excepciones

    10:53
  • 16
    Poniendo a prueba el manejo de excepciones

    Poniendo a prueba el manejo de excepciones

    04:12
  • 17
    Assert statements

    Assert statements

    07:55
  • quiz Manejo de errores

Manejo de archivos
  • 18
    ¿Cómo trabajar con archivos?

    ¿Cómo trabajar con archivos?

    06:52
  • 19
    Trabajando con archivos de texto en Python

    Trabajando con archivos de texto en Python

    12:27
  • quiz Manejo de archivos

Conclusión
  • 20
    Reto final: Juego del Ahorcado o Hangman Game

    Reto final: Juego del Ahorcado o Hangman Game

    03:43
  • 21
    Continúa tu camino profesional con Python

    Continúa tu camino profesional con Python

    02:17
    Jose Noriega

    Jose Noriega

    student•
    hace 5 años

    Hangman

    Les comparto mi versión del juego.

    Código

    Link: https://github.com/JoseNoriegaa/python-cli-hangman/blob/master/main.py

    Capturas del juego

    Screen Shot 2021-04-07 at 1.02.44 a.m..png
    Screen Shot 2021-04-07 at 1.03.05 a.m..png
      Jose Noriega

      Jose Noriega

      student•
      hace 5 años

      Cualquier sugerencia es bien recibida 😀

      Andrés Cardona

      Andrés Cardona

      student•
      hace 5 años

      Excelente!!

    David Santiago Hurtado Betancourt

    David Santiago Hurtado Betancourt

    student•
    hace 5 años

    Les comparto mi juego!

    Código en Github

    Tiene varias funcionalidades, es el mayor proyecto que he hecho hasta ahora como developer 😎.

      Kenneth Leonel Cruz Ordoñez

      Kenneth Leonel Cruz Ordoñez

      student•
      hace 5 años

      Muchacho, acabo de ver tu repo y leer tu bio; estoy muy sorprendido, es muy alentador y hasta inspirador.

      Felicidades.

      fidel angel ochoa

      fidel angel ochoa

      student•
      hace 4 años

      que buen juego!!

    Diego Buesaquillo

    Diego Buesaquillo

    student•
    hace 5 años

    Me tardé dos días para programar el juego. Buscaba en internet las dudas que me surgían, pues no quería ver el código de mis compañeros. Quise hacerlo por mis propios medios y lo logré! Sé que es un código muy artesanal y probablemente tenga varias cosas por mejorar o sintetizar, pero me siento muy feliz (no soy ingeniero, soy economista con pocos meses inmiscuido en programación :D).

    carbon (3).png

      Nestor Jesus Rodriguez Rodriguez

      Nestor Jesus Rodriguez Rodriguez

      student•
      hace 4 años

      Bien hecho compañero

      Alfredo Velez

      Alfredo Velez

      student•
      hace 4 años

      Yo también soy economista y me estoy metiendo en el tema de la programación XD

    Leandro Gutiérrez Escarpeta

    Leandro Gutiérrez Escarpeta

    student•
    hace 5 años

    ultimo dia de la suscripcion, ultimo curso ......byeeee ,nunca paresn de aprender !!!!!

      Royer Guerrero Pinilla

      Royer Guerrero Pinilla

      student•
      hace 5 años

      Esto suena muy triste 😿

      Saúl Mendoza

      Saúl Mendoza

      student•
      hace 5 años

      No se vaya señor @casillero21

    Andrés Camilo Rozo Vanegas

    Andrés Camilo Rozo Vanegas

    student•
    hace 4 años

    Hola. Este es mi reto de Hangman Game espero les pueda servir de guía 🐍: Link: //github.com/hackmilo/HangmanGame-JuegoAhorcado

    Menú de inicio:

    hangmanmenu.png

    Hangman:

    hangman.png

    Ganador:

    winhang.png

    Perdedor:

    losehang.png

      Carlos Saborio Yglesias

      Carlos Saborio Yglesias

      student•
      hace 4 años

      excelentes ilustraciones

      Ricardo

      Ricardo

      student•
      hace 4 años

      Excelente, como generaste las gráficas en la terminal?

    Cesar Hernández Ramírez

    Cesar Hernández Ramírez

    student•
    hace 5 años

    ✔ Esto les servirá para remover acentos a la hora de comparar el input con la letra:

    def normalize(s): # It removes the accents of a string replacements = ( ("á", "a"), ("é", "e"), ("í", "i"), ("ó", "o"), ("ú", "u"), ) for a, b in replacements: s = s.replace(a, b).replace(a.upper(), b.upper()) return s
      Leidy Julieth Herrera Torres

      Leidy Julieth Herrera Torres

      student•
      hace 5 años

      Que genial tu aporte. Yo encontré que los métodos maketrans() y translate() también son útiles para realizar el cambio de los caracteres especiales, por ejemplo:

      sentence = "Mi mamá le compró un balón de fútbol a mi hermano" new_sentence = sentence.maketrans('áéíóú', 'aeiou') n_sentence = sentence.translate(new_sentence) print(n_sentence)

      El resultado que arroja print es 'Mi mama le compro un balon de futbol a mi hermano'. Saludos.

      Santiago Lopera Naranjo

      Santiago Lopera Naranjo

      student•
      hace 5 años

      Mirando el aporte de ** LJHT_16 ** veo que el metodo maketrans lo que hace es crear un diccionario con el codigo ascii de cada letra donde la llave son el primer parametro y el valor el segudo:

      {225: 97, 233: 101, 237: 105, 243: 111, 250: 117}

      Supongo que translate es quien intercambia los valores.

      Gracias por ambos aportes!

      #nuncaparesdeaprendes 💚

    Miguel Angel Reyes Moreno

    Miguel Angel Reyes Moreno

    student•
    hace 5 años

    data.txt : crema café estrella explosión guitarra plástico navaja martillo libros lápiz lapicera aluminio embarcación letra agujeta ventana librería sonido universidad rueda perro llaves camisa pelo papá sillón felicidad catre teclado servilleta escuela pantalla sol codo tenedor estadística mapa agua mensaje lima cohete rey edificio césped presidencia hojas parlante colegio granizo pestaña lámpara mano monitor flor música hombre tornillo habitación velero abuela abuelo palo satélite templo lentes bolígrafo plato nube gobierno botella castillo enano casa libro persona planeta televisor guantes metal teléfono proyector mono remera muela petróleo percha remate debate anillo cuaderno ruido pared taladro herramienta cartas chocolate anteojos impresora caramelos living luces angustia zapato bomba lluvia ojo corbata periódico diente planta chupetín buzo oficina persiana puerta tío silla ensalada pradera zoológico candidato deporte recipiente diarios fotografía ave hierro refugio pantalón barco carne nieve tecla humedad pistola departamento celular tristeza hipopótamo sofá cama árbol mesada campera discurso auto cinturón rúcula famoso madera lentejas piso maletín reloj diputado cuchillo desodorante candado luz montañas computadora radio moño cuadro calor partido teatro bife fiesta bala auriculares

    José Rodrigo Arana Hi

    José Rodrigo Arana Hi

    student•
    hace 4 años

    Si lees esto, confía en tí. Tú puedes.

    Llevo apróximadamente cinco días con el reto. En un día ya tenía el programa funcional, los demás días a decir verdad los fui descansando después de muchas horas de estudio a lo largo de los últimos meses. Estos días estuve haciéndole mejoras al programa y tomando en cuenta el feedback de mi familia para mejorarlo.

    El reto es cómo harías tú mismo el programa con todo lo aprendido. Notarás (porque me pasó) que podías empezar por cualquier lado y que tienes ya muchas herramientas a tu disposición, pero te preguntabas cómo arrancar.

    Trata de hacer el reto tu mismo. Busca en internet, foros y blogs cómo se hace lo que quieres hacer. Te sorprenderás de muchas otras cosas que ni sabías. Al final, nada más complaciente que mirar el programa como producto final funcional, que te das cuenta que ya estás a otro nivel que ayer, y que sí, tu programa puede ser mejorado, pero date cuenta que lo lograste. Posteriormente toma el feedback de los demás sobre tu código y mejoralo. El feedback también nos mejora.

    Pronto les comparto mi código por github (tengo meses de no usarlo y ya olvidé varios conceptos, solo refresco mi memoria y lo subo): tiene manejo de errores, utilicé recomendaciones de Stackoverflow, además de que si te sabes la palabra, solo lo escribes y tienes la oportunidad de ganar. Si fallas, es un strike. Gracias master Facundo.

    Johnnie Lopez

    Johnnie Lopez

    student•
    hace 5 años
    Captura de pantalla 2021-04-13 a la(s) 4.47.17 p. m..png
      Joaquim Jair Merlo Luque

      Joaquim Jair Merlo Luque

      student•
      hace 5 años

      si pones lin = '-' * len(word) te ahorras toda una función

      Johnnie Lopez

      Johnnie Lopez

      student•
      hace 5 años

      Gracias @joaquimjairmerloluque1 efectivamente es así. ya hice la respectiva modificación.

      Captura de pantalla 2021-04-14 a la(s) 3.41.14 p. m..png
    Gabriel Andrés Rondón Barragán

    Gabriel Andrés Rondón Barragán

    student•
    hace 5 años

    Logré el reto, este es el enlace al repositorio con los archivos del mismo Repositorio. Para el que empieza perdido en el juego les comparto el camino que seguí para desarrollarlo, aunque las sugerencias al código son muy bien recibidas, se que tiene mucho por mejorar. Estos son los pasos:

    -Leer el archivo con las palabras. (También vi que algunos lo creaban en el caso que el archivo no estuviera, me pareció buena función y lo agregue). -Escoger una palabra del archivo aleatoriamente. -Recibir una letra de parte del jugador. -Crear un string o lista con el caracter "_" debe ser del tamaño de la palabra escogida. -Las tildes generan problemas, se deben traducir en letras sin tildes. -Encontrar las veces que la letra se encuentra en la palabra y en que posición están. -Ubicar la letra en la posición correspondiente dentro del espacio con las rayas al piso. -Reescribir cada vez que el usuario adivina una letra. -Validar si ya encontró la palabra completa. -Crear el sistema de puntos. -Crear el banner con código ASCII, hay varias paginas para hacerlo fácilmente (solo hay que tener en cuenta que algunos caracteres se ven en windows y en linux no)

    Espero a alguien le sirva de ayuda.!

    hangman_banner.png

    Cesar Hernández Ramírez

    Cesar Hernández Ramírez

    student•
    hace 5 años

    ✔ Este es mi resultado, tiene sistema de puntos, vidas, ilustraciones 4k, aprueba de tíldes, mayus., minus. y números: https://github.com/CesarHera/Intermediate_Python/blob/master/hangman.py

    Espero a alguien le ayude 🛒

      Jhon Edward Bedoya

      Jhon Edward Bedoya

      student•
      hace 5 años

      🟢 Interesante propuesta Cesar. Trata de separar los espacios entre letras y evita que salga la palabra escogida en pantalla

      Cesar Hernández Ramírez

      Cesar Hernández Ramírez

      student•
      hace 5 años

      Gracias!

    Luis Gerardo Hernández Pintor

    Luis Gerardo Hernández Pintor

    student•
    hace 5 años

    Con esta herramienta pase de texto a ascii

    https://patorjk.com/software/taag/#p=display&f=Graffiti&t=Type%20Something%20

    espero les sirva :D

      FREDDY NILSON HOME VILLA

      FREDDY NILSON HOME VILLA

      student•
      hace 4 años

      Bien, gracias.

    Víctor Moreno Marín

    Víctor Moreno Marín

    student•
    hace 5 años
    Screenshot_20210516_213423.png
    Screenshot_20210516_213524.png
    Daniela Giraldo

    Daniela Giraldo

    student•
    hace 4 años

    Llegue a esta clase entendiendo la logica de cada una de las clases, pero siento que no se por donde comenzar, y viendo el codigo del profesor siento que hay muchas cosas que no vi, por ejemplo alguien me puede explicar para que utilizamos import os?.

      francisco ecatl melo valle

      francisco ecatl melo valle

      student•
      hace 4 años

      En esta leccion dio extras que no se vieron en las clases anteriores pero que podrian servir para mejorar el juego de ahorcado, y que de quererlas usar habria que buscarlas por nuestra cuenta en el caso de : import os se utiliza porque tiene una función que limpia la terminal, lo cual le daría mejor presentacion al programa

      Anthony Ismael Manotoa Moreno

      Anthony Ismael Manotoa Moreno

      student•
      hace 4 años

      Hola :)

      Mira esta clase a partir del min 02:19, ahí te deja "ayudas" en las que menciona lo de import os. Pero básicamente es para que automáticamente se limpie la consola.

      Parte del reto es justo eso, intentar unir todo lo aprendido para armar el programa. Cuando lo hice la primera vez me sentí igual y me tomó un par de horas poder hacerlo, pero eso te ayudará mucho en tu lógica.

    Mariano Gobea Alcoba

    Mariano Gobea Alcoba

    student•
    hace 4 años

    Buenas a todos/as en esta maravillosa comunidad: Les dejo mi versión del Hangman Game. Una maravillosa experiencia de programación.

    https://github.com/Mgobeaalcoba/python_intermedio_platzi/blob/main/juego_del_ahorcado.py

    Consola del Hangman Game.PNG
    Yair Enrique Riascos Mestre

    Yair Enrique Riascos Mestre

    student•
    hace 4 años

    Aquí dejo mi solución al reto

    import random import os def run(): intentos=5 acierto=0 lista=[] final="" #Abriendo el archivo with open("./data.txt","r",encoding="utf-8")as f: for i in f: lista.append(i.rstrip("\n")) #Obtenido palabra random palabra=random.choice(lista) adivina =["_" for i in palabra ] print(""" Bienvenido/a al juego del ahorcado la palabra que debes adivinar es """ +"_ "*len(palabra) +"Tienes " +str(intentos)+" intentos") while(True): letra=input("Ingresa una letra ").lower() if(len(letra)>=2 or letra.isalpha==False): letra="" print(" Has ingresado un caracter inválido") continue for count, i in enumerate(palabra): if letra == i: adivina[count]=letra acierto+=1 print("acertaste "+ str(acierto)+" veces la letra "+ letra) acierto=0 if letra not in palabra: intentos -=1 print("fallaste te restan "+ str(intentos)+ " intentos") for i in adivina: print(i , end=" ") final+=i if final == palabra: print("Has ganado, la palabra correcta es "+final) break if intentos ==0: print("Has perdido, mejor suerte la próxima la palabra correcta era "+ palabra) break final="" if __name__ == "__main__": run()
      Joseph Lázaro Ricardo

      Joseph Lázaro Ricardo

      student•
      hace 4 años

      Gracias, me ayudo bastante.

    Roberto Andres Viruete Gonzalez

    Roberto Andres Viruete Gonzalez

    student•
    hace 4 años

    aqui esta mi codigo, intente hacerlo de la manera mas corta y sensilla posible por que en el primer intento el codigo era un desastre a mi criterio

    import random import os def run(): with open('./DATA.txt' , 'r' , encoding='utf-8') as data: lista = [i.strip() for i in data] palabra = random.choice(lista) palabra_oculta_lista = ['_' for i in range( len(palabra) ) ] string_palabra_oculta = "".join(palabra_oculta_lista) while palabra != string_palabra_oculta: os.system("clear") print(f'Juguemos ahorcado, adivina la palabra, {len(palabra)} letras') print(string_palabra_oculta) letra = input('Presiona una tecla y despues enter ').lower() iterador = 0 for i in palabra: if i == letra: palabra_oculta_lista[iterador] = i iterador += 1 string_palabra_oculta = "".join(palabra_oculta_lista) if palabra == string_palabra_oculta: os.system("clear") print(f'Felicidades la palabra era {string_palabra_oculta}') if __name__ == '__main__': run()
    DANIEL RUIZ DE LA RIVA

    DANIEL RUIZ DE LA RIVA

    student•
    hace 4 años

    Sencillo pero es trabajo honesto:

    ## JUEGO DEL AHORCADO import os import random import time TITLE = " ..:::: AHORCADO ::::.." HANGMANPICS = [''' +---+ | | | | | =========''', ''' +---+ | | | | | | =========''', ''' +---+ | | O | | | | =========''', ''' +---+ | | O | | | | | =========''', ''' +---+ | | O | /| | | | =========''', ''' +---+ | | O | /|\ | | | =========''', ''' +---+ | | O | /|\ | / | | =========''', ''' +---+ | | O | /|\ | / \ | | ========='''] LIFES = 7 lifes = LIFES def select_word(): with open("./data.txt", "r", encoding="utf-8") as f: list = [line for line in f] dic = {list.index(word): word for word in list} last_index = list.index(list[-1]) random_index = random.randrange(0, last_index) word = dic.get(random_index) return word[0:-1] def init(word): os.system("cls") size = len(word) box = [] for i in range(0, size): box.insert(i, "_") print(TITLE) print("\n" + HANGMANPICS[LIFES-lifes]) print("\n" + " ".join(box)) return box def check_input(guess, word): char = input("\nIngresa una letra (Chances = " + str(lifes) + "): ") while True: try: if char.isalpha() and len(char) == 1: return char break else: raise Exception except Exception: char = input("Error: Ingresa solo una letra: ") def search(char, word, box): global lifes if word.count(char) > 0: for index, item in enumerate(box): if char == word[index]: box[index] = char else: print("Fallaste!") time.sleep(1) lifes = lifes - 1 return box def refresh(box): os.system("cls") print(TITLE) print("\n" + HANGMANPICS[LIFES-lifes]) print("\n" + " ".join(box)) array = "".join(box) return array def run(): word = select_word() box = init(word) guess = "" while guess != word and lifes > 0: char = check_input(guess, word) box = search(char, word, box) guess = refresh(box) if lifes > 0: print("\nAdivinaste la palabra ", word.upper()) else: print("\nAhorcado!!") print("La palabra correcta es ", word.upper()) if __name__ == '__main__': run()
      Nelson Ricardo Ramírez García

      Nelson Ricardo Ramírez García

      student•
      hace 3 años

      ¡Excelente! 👊👍

    Kenneth Leonel Cruz Ordoñez

    Kenneth Leonel Cruz Ordoñez

    student•
    hace 4 años

    El resultado:

    Screenshot (28).png
    Screenshot (30).png
    Screenshot (31).png
    Screenshot (32).png
    Screenshot (33).png

    Finalmente hace uso de POO y uso de un archivo JSON para el manejo de las palabras en el uso del juego.

    Repositorio:
    Github

      Brayan Buitrago

      Brayan Buitrago

      student•
      hace 4 años

      El detalle de los corazones para las vidas y opción de dificultad... 10/10

    Roberto Andres Viruete Gonzalez

    Roberto Andres Viruete Gonzalez

    student•
    hace 4 años

    pude hacer el reto sin ayuda pero mi codigo me quedo horrible, no tengo mucha experiencia en programacion a mi favor ¿alguien mas?

      Héctor Eduardo López Carballo

      Héctor Eduardo López Carballo

      student•
      hace 4 años

      Es normal, no te sientas mal por ello. Conforme avances te darás cuenta de las buenas prácticas para escribir código, el chiste es que sigas practicando y aprendiendo.

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads