Diplomado en Python profesional

Estudia en la Universidad N°1 de habla hispana en Latinoamérica por QS Latam University Rankings 2024

Acerca del programa:

El Diplomado en Python Profesional tiene como propósito entregar las competencias para poder utilizar el versátil lenguaje de programación Python en aplicaciones de diverso tipo con énfasis en su potencial para la ciencia de datos y el Machine Learning.

Diplomado UC en Python Profesional

Dirigido a:

  • Desarrolladores u otros profesionales que deseen agregar el lenguaje Python a su arsenal de herramientas en todo su potencial.
  • Profesionales que trabajan en aplicaciones del área de ciencia de datos y que no tienen una formación muy fuerte en programación, que necesitan potenciar su trabajo con datos.

Jefe de Programa

Jaime Navón Cohen

Ph.D. Computer Science, University of North Carolina at Chapel Hill. Master of Science, Technion-Israel Institute of Technology. Ingeniero Civil Electricista, Pontificia Universidad Católica de Chile. Profesor Asociado del Departamento de Ciencia de la Computación, Pontificia Universidad Católica de Chile.
linkedin

Equipo Docente

keyboard_arrow_down

Gabriel Dieguez

Project Manager en Magnet SPA, Magister en Ciencias de la Ingeniería, Pontificia Universidad Católica de Chile, Ingeniero Civil en Computación, Pontificia Universidad Católica de Chile. Profesor Instructor Adjunto del Departamento de Ciencia de la Computación, Pontificia Universidad Católica de Chile. 

Joao López Silva

B.Sc Ciencias de la Computación, Universidad Técnica Federico Santa María, Jefe de Proyectos / DevOps en Magnet SpA. 9 años de experiencia trabajando en proyectos usando Django. 

Francisco Pérez

Ing. Civil Industrial, Magíster en Gestión de Operaciones U. de Talca. Cursa el doctorado en Ciencias de Ingeniería en la PUC. Profesor part-time en la facultad de Ingeniería y en la Facultad de Economía de la U. de Talca. Profesor asistente en las cátedras de Minería de Datos y Tópicos Avanzados de Inteligencia de Máquina en la PUC. 

Antonio Ossa Guerra

Ingeniero Civil de Industrias con Diploma en Ingeniería de Computación UC, Magíster en Ciencia de la Computación UC. Ingeniero en Machine Learning de PhageLab.

* EP (Educación Profesional) de la Escuela de Ingeniería se reserva el derecho de remplazar, en caso de fuerza mayor, a él o los profesores indicados en este programa; y de asignar al docente que dicta el programa según disponibilidad de los profesores.

Descripción

Los participantes del Diplomado en Python Profesional aprenderán a programar utilizando el lenguaje Python y a construir aplicaciones nativas y aplicaciones web que permitan hacer análisis o visualización de datos, o que incorporen algoritmos de inteligencia artificial. Para ello, conocerán algunas de las principales librerías y herramientas del ecosistema Python. 

En este diplomado el acento está en aprender y dominar la herramienta misma, mostrando su versatilidad con aplicaciones en diversos ámbitos, a diferencia de otros programas en que el énfasis está en los conceptos de ciencia de datos e inteligencia artificial que se ilustran y ejemplifican con código en el lenguaje Python. La pertinencia de este programa se basa en que el lenguaje Python profesional se ha transformado en una herramienta fundamental, tanto para los desarrolladores de software como para profesionales del área de ciencia de datos e inteligencia artificial. 

El formato del Diplomado en Python Profesional es 100% en línea y se estructura sobre cuatro cursos que utilizan técnicas metodológicas activas. Gracias a estas últimas, el participante puede interactuar con sus pares y profesor-tutor a través de los recursos tecnológicos que provee la plataforma educativa virtual.

Requisitos de Ingreso

  • Se recomienda poseer una licenciatura o título profesional que incluya competencias de programación.
  • Se recomienda tener competencias de programación a un nivel intermedio en algún lenguaje. Para evaluar sus competencias, puede realizar este test opcional gratuito: https://www.hackerrank.com/prueba-programacion. Es importante que, si está muy lejos de lograr el puntaje máximo, o está teniendo muchas dificultades, ejercite sus habilidades de programación antes del inicio del programa.

Objetivos de Aprendizaje

  1. Aplicar el lenguaje Python en forma amplia y transversal incluyendo la interacción con motores de bases de datos, las aplicaciones Web y el desarrollo de soluciones con inteligencia artificial  

Desglose de cursos

Curso : Desarrollo de Software con Python

keyboard_arrow_down
Software Development with Python  

Docente(s): Antonio Ossa

Unidad académica responsable: Escuela de Ingeniería

Requisitos: Sin prerrequisitos

Créditos: 4

Horas totales: 75 | Horas directas: 35 | Horas indirectas: 40

Descripción del curso

El curso comienza con sintaxis y tipos básicos en Python, para luego abordar las estructuras fundamentales como listas, tuplas, colas, diccionarios y sets, analizando ventajas y desventajas de cada una de ellas y técnicas de lectura y escritura de datos. Se estudian además los conceptos y técnicas del paradigma de orientación a objetos y su implementación en el lenguaje Python. El curso concluye enseñando cómo utilizar bibliotecas existentes para integrarlas efectivamente dentro de un programa. 

Los contenidos serán abordados en 6 clases en línea (8 semanas), donde se entregarán los contenidos mediante recursos interactivos que integran videos, esquemas, artículos, lecturas y preguntas formativas. Lo anterior, utilizando una plataforma educativa virtual.  

Resultados de aprendizaje

  1. Utilizar las estructuras de datos secuenciales y no secuenciales más adecuadas en cada caso. 
  2. Construir un programa utilizando los conceptos de la programación orientada a objetos. 
  3. Incorporar funcionalidades disponibles en bibliotecas existentes a un programa propio. 

Contenidos:

  • Introducción al lenguaje de programación Python y su sintaxis. 
  • Estructuras de datos secuenciales: listas, tuplas, colas. 
  • Estructuras de datos no secuenciales: diccionarios y sets. 
  • Clases, objetos, atributos y métodos. 
  • Interacción entre objetos. 
  • Uso de módulos y bibliotecas existentes. 

Estrategias metodológicas:

  • Aprendizaje autónomo asincrónico estructurado en 6 módulos 
  • Clases expositivas  
  • Foros 
  • Estudio de caso  

Estrategias evaluativas:

  • 3 controles individuales – 40% 
  • 3 mini proyectos individuales – 60% 

*Nota: El orden de los cursos dependerá de la programación que realice la Dirección Académica

Curso : Python y bases de datos

keyboard_arrow_down
Python and Databases  

Docente(s): Jaime Navón

Unidad académica responsable: Escuela de Ingeniería

Requisitos: Sin prerrequisitos

Créditos: 4

Horas totales: 75 | Horas directas: 35 | Horas indirectas: 40

Descripción del curso

El punto de partida para el trabajo de análisis de datos es obtenerlos desde las fuentes originales. Muchas veces están disponibles en forma de datasets ya preparados y compuestos por un conjunto de archivos de texto (csv, tsv, etc); otras veces es necesario conectarse con algún motor de bases de datos (MySQL, PostgreSQL, SQLServer, etc) y extraerlos directamente desde allí. En ocasiones es necesario transformar los datos extraídos para luego volver a cargar la data ya transformada, en otro motor de bases de datos que es usado para análisis (almacén de datos o data warehouse). 

Los alumnos de este curso aprenderán los conceptos fundamentales asociados a las bases de datos, y a interactuar con un motor de bases de datos real, mediante el lenguaje standard SQL, para luego aprender cómo conectarse a un motor de bases de datos desde un programa Python para extraer y manipular la información. Finalmente, se aborda la interacción, también desde Python, con un motor de la categoría NoSQL como MongoDB o similar. 

La metodología de enseñanza y aprendizaje para este curso online, a través de la Plataforma de Clase Ejecutiva, consiste en técnicas metodológicas activas, donde el participante puede interactuar con sus pares y profesor-tutor a través de los recursos tecnológicos que provee la plataforma educativa virtual provista para el curso. 

Resultados de aprendizaje

  1. Describir las características de una base de datos relacional y una base de documentos. 
  2. Interactuar directamente con un motor de bases de datos desde la herramienta de administración. 
  3. Escribir consultas simples utilizando el lenguaje SQL. 
  4. Formular consultas simples de una base de datos relacional mediante el lenguaje standard SQL. 
  5. Construir programas Python que se conecten a un motor de bases de datos información. 

Contenidos:

  • Conceptos y familiarización con ambiente de trabajo 
    • Conceptos fundamentales de bases de datos 
    • El modelo relacional 
    • MySQL desde el Workbench 
  • Crear una BD simple con solo dos tablas y poblarla con información 
    • Introducción al lenguaje SQL 
    • Creación de una base de datos desde Python 
    • Tablas y tipos de datos 
    • Creación de tablas desde Python 
    • Agregar y eliminar información a una tabla desde Python 
  • SQL y Dataframes 
    • Introducción a Pandas y Dataframes 
    • SQL joins 
    • Transacciones en bases de datos 
    • Eliminación y modificación de filas en una tabla 
  • Extracción de información más sofisticada de la BD con consultas más complejas y trabajo con Dataframes 
    • Operaciones de conjunto y cláusulas de agrupación 
    • Ordenamiento y agrupación 
    • Carga de contenido csv desde una API Web 
    • Procesamiento de un archivo en formato csv 
  • Bases de datos NoSQL de documentos, MongoDB y JSON 
    • Bases de datos NoSQL 
    • Introducción a MongoDB 
    • El formato JSON 
    • MongoDB desde Python 
  • Extraer y procesar información JSON desde una BD MongoDB y desde una API en la Web y procesarla con un programa Python 
    • Conectando con MongoDB 
    • Interactuando con el motor MongoDB desde un programa 
    • Procesamiento de JSON desde Python 
    • Extracción de JSON desde una API Web 

Estrategias metodológicas:

  • Aprendizaje autónomo asincrónico estructurado en 6 módulos 
  • Clases expositivas  
  • Foros 
  • Estudio de caso  

Estrategias evaluativas;

  • 3 controles individuales – 40% 
  • 3 mini proyectos individuales – 60%

*Nota: El orden de los cursos dependerá de la programación que realice la Dirección Académica

Curso : Python para Machine Learning

keyboard_arrow_down
Python for Machine Learning  

Docente(s): Francisco Pérez

Unidad académica responsable: Escuela de Ingeniería

Requisitos: Sin prerrequisitos

Créditos: 4

Horas totales: 75 | Horas directas: 35 | Horas indirectas: 40

Descripción del curso

Python se ha convertido en una de las herramientas fundamentales para los profesionales de Machine Learning. En este contexto, el saber usar librerías como scikit-learn, scipy, numpy, pandas o keras, constituye una competencia básica para el desarrollo de proyectos de este tipo en el entorno empresarial. Este curso busca entregar una base de conocimiento de los fundamentos que soportan estas potentes metodologías y herramientas, potenciando significativamente al participante para enfrentar desafíos que involucran inteligencia artificial y dándole así una ventaja competitiva en el mercado laboral. 

A través de este curso, los alumnos aprenderán los conceptos fundamentales asociados de Machine Learning tanto en su versión supervisada como no supervisada. Dicho aprendizaje será acompañado mediante un conjunto de librerías de Python, las que permitirán pasar de la teoría a la implementación de forma amigable, y actualizada a las tecnologías utilizadas en el mercado. 

La metodología de enseñanza y aprendizaje para este curso online consiste en técnicas metodológicas activas, donde el participante puede interactuar con sus pares y profesor-tutor a través de los recursos tecnológicos que provee la plataforma educativa virtual provista para el curso. 

Resultados de aprendizaje

  1. Comprender aspectos formales de modelos de aprendizaje supervisado tradicionales, experimentando y comparando su rendimiento. 
  2. Visualizar diferentes tipos de variables en una base de datos utilizando librerías de Python. 
  3. Emplear modelos de redes neuronales artificiales básicas. 
  4. Diseñar modelos de aprendizaje supervisado basados en regresiones. 
  5. Implementar modelos de aprendizaje no supervisado a través de librerías de Python. 

Contenidos:

Introducción al Aprendizaje de Máquinas con Python 

Introducción al Aprendizaje de Máquina 

Tipos de problemas en Aprendizaje de Máquina 

Preprocesamiento de datos con Python 

Introducción a librerías del ecosistema de Data Science 

Tipos de variables 

Análisis descriptivo de variables 

Transformación de variables 

Visualización de variables 

Imputación de datos 

Regresiones 

Aprendizaje supervisado 

Regresión lineal 

Regresiones polinomiales 

Regresión con penalización 

Regresión logística 

Aprendizaje supervisado 

Naive Bayes 

Evaluación de clasificadores 

Árboles de decisión 

Random Forest 

Random Forest para regresión 

Redes neuronales 

Introducción a las redes neuronales artificiales 

Tecnologías para desarrollo de redes neuronales artificiales 

Redes neuronales artificiales 

Aprendizaje no supervisado 

Aprendizaje no supervisado 

K-Means 

Cluster jerárquico 

Evaluación de clusters 

Reducción de dimensionalidad 

Estrategias metodológicas 

  • Aprendizaje autónomo asincrónico estructurado en 6 módulos 
  • Clases expositivas  
  • Foros 
  • Estudio de caso  

Estrategias evaluativas 

  • 3 controles individuales – 40% 
  • 3 mini proyectos individuales – 60% 

Nota: El orden de los cursos dependerá de la programación que realice la Dirección Académica

Curso : Python y la Web

keyboard_arrow_down
Python and the Web 

Docente(s): Gabriel Dieguez y Joao López

Unidad académica responsable: Escuela de Ingeniería

Requisitos: Sin prerrequisitos

Créditos: 4

Horas totales: 75 | Horas directas: 35 | Horas indirectas: 40

Descripción del curso

En la actualidad, las tecnologías web constituyen la base de múltiples sistemas fundamentales para el funcionamiento de nuestra sociedad. Su alcance abarca desde la presentación de información relativamente estática hasta aplicaciones muy complejas, como motores de correo, redes sociales o sistemas de monitoreo de infraestructura crítica. En este sentido, adquirir las habilidades para desarrollar de manera satisfactoria una aplicación web se vuelve sumamente valioso. 

Los alumnos de este curso aprenderán los conceptos fundamentales asociados a la web, desarrollando páginas estáticas mediante el uso de HTML y CSS. Posteriormente, podrán transformar estas páginas en aplicaciones web utilizando el lenguaje Python y el framework Django. Se abordará el uso de JavaScript para el procesamiento en el lado del cliente, y finalmente, se aprenderá a consumir y desarrollar una API REST. Para alcanzar estos objetivos, se empleará el framework Django junto con Django REST Framework. 

La metodología de enseñanza y aprendizaje para este curso en línea se basa en técnicas metodológicas activas, permitiendo que los participantes interactúen con sus pares y el profesor-tutor a través de los recursos tecnológicos proporcionados por la plataforma educativa virtual de Clase Ejecutiva destinada para el curso. 

Resultados de aprendizaje

  1. Identificar los protocolos y estándares que rigen la World Wide Web (WWW). 
  2. Reconocer la arquitectura y el funcionamiento de una aplicación web. 
  3. Escribir páginas estáticas con HTML y CSS, así como el desarrollo de una aplicación web (en el lado del servidor) con la ayuda de un framework. 
  4. Procesar información en el lado del cliente mediante el uso de JavaScript. 
  5. Interactuar con una interfaz de programación de aplicaciones (API) desde un programa en Python. 
  6. Desarrollar una interfaz de programación de aplicaciones (API REST) sencilla usando HTML, CSS, JavaScript y Python 

Contenidos:

  • Introducción a la Web 
    • ¿Qué es la web? 
    • El protocolo HTTP. 
    • Estructura de las páginas con HTML 
    • Estilo de las páginas con CSS. 
  • Arquitectura de una Aplicación Web e Introducción a Django 
    • Arquitectura MVC de la Web 
    • Introducción a Django 
    • Instalación de Django 
    • Creación de un proyecto Django 
    • El archivo settings 
  • El framework Django 
    • Modelos y migraciones 
    • Views 
    • Templates 
    • Forms 
    • Admins 
  • Procesamiento en el cliente con JavaScript en Django 
    • Routing 
    • Django Shell 
    • El lenguaje JavaScript 
    • Manipulación del DOM y eventos 
    • JavaScript en Django: un ejemplo de validación en el cliente 
  • APIs REST. 
    • Introducción a las APIs REST 
    • Obtener información desde una API 
    • Modificar información a través de una API 
    • Setup para consumir una API 
    • Setup de Django REST Framework 
  • APIs REST en Django: REST Framework 
    • Serializers 
    • Viewsets y paginación 
    • Routing de la API 
    • Probando nuestra API y documentación automática 
    • Consumiendo nuestra API para mejorar nuestra aplicación 

Estrategias metodológicas:

  • Aprendizaje autónomo asincrónico estructurado en 6 módulos 
  • Clases expositivas  
  • Foros 
  • Estudio de caso  

Estrategias evaluativas:

  • 3 controles individuales – 40% 
  • 3 mini proyectos individuales – 60% 

Nota: El orden de los cursos dependerá de la programación que realice la Dirección Académica

Requisitos Aprobación

La Nota final del diplomado se calculará de acuerdo a la siguiente ponderación de los cursos: 

  • Curso: Desarrollo de Software con Python 25%
  • Curso: Python y Bases de Datos 25%
  • Curso: Python para Machine Learning 25%
  • Curso: Python y la Web                            25%

Los alumnos deberán ser aprobados de acuerdo a los siguientes criterios: 

  • Calificación mínima de todos los cursos 4,0 en su promedio ponderado.

Los resultados de las evaluaciones serán expresados en notas, en escala de 1,0 a 7,0 con un decimal, sin perjuicio que la Unidad pueda aplicar otra escala adicional.

Para aprobar un Diplomado, se requiere la aprobación de todos los cursos que lo conforman y, en los casos que corresponda, de otros requisitos que indique el programa académico.

El estudiante será reprobado en un curso o actividad del Programa cuando hubiere obtenido como nota final una calificación inferior a cuatro (4,0).

Los alumnos que aprueben las exigencias del programa recibirán un certificado de aprobación digital otorgado por la Pontificia Universidad Católica de Chile. 

Además, se entregará una insignia digital por diplomado. Sólo cuando alguno de los cursos se dicte en forma independiente, además, se entregará una insignia por curso.

Proceso de Admisión

Las personas interesadas deberán completar la ficha de postulación que se encuentra al costado derecho de esta página web y enviar los siguientes documentos al momento de la postulación o de manera posterior a la coordinación a cargo: 

  • Fotocopia Carnet de Identidad.

Cualquier información adicional o inquietud podrás escribir al correo programas@ing.puc.cl.

VACANTES: 40

INFORMACIONES RELEVANTES

Con el objetivo de brindar las condiciones de infraestructura necesaria y la asistencia adecuada al inicio y durante las clases para personas con discapacidad: Física o motriz, Sensorial (Visual o auditiva) u otra, los invitamos a informarlo. 

El postular no asegura el cupo, una vez inscrito o aceptado en el programa se debe pagar el valor completo de la actividad para estar matriculado.

No se tramitarán postulaciones incompletas.

Puedes revisar aquí más información importante sobre el proceso de admisión y matrícula


Fechas disponibles

Los detalles del programa pueden variar en cada fecha de edición

Fecha Horario Lugar Valor
25 marzo 2025 - 25 noviembre 2025 Asincrónico $2.190.000 Ver más

¿Te parece interesante este programa?

No