www.icai.ac.cr

Programación en Python Básico


Perfil de ingreso (Requisitos):

  • Personas con conocimientos básico en programación, rutinas de programación y conocimiento básico en el uso de alguno de los lenguajes de programación (C, C++, Pascal, C#, VB#, PHP, Cobol, Lisp, Prolog, Etc)
  • El estudiante debe tener conocimientos generales de matemáticas y haber aprobado el noveno grado.

Perfil de salida:

Al finalizar el curso los estudiantes podrán:

  • Conocer las principales características de un lenguaje orientado a objetos, específicamente el lenguaje Python.
  • Reconocer y utilizar la sintaxis del lenguaje Python de forma adecuada.
  • Plantear soluciones algorítmicas o problemas reales.
  • Utilizar las principales habilidades para la ciencia de datos mediante el lenguaje Python.

Descripción del curso:

Python es un lenguaje multiplataforma que permite mayor facilidad legibilidad, coherencia y con los mayores estándares de calidad realizar aplicaciones para todo tipo de entornos, para web, bases de datos, dispositivos móviles, aplicaciones de escritorio, servidor, con amplio soporte de módulos externos que enriquecen el conjunto de herramientas disponibles. Este curso cubre los aspectos básicos de la programación orientada a objetos y el lenguaje de programación Python, enfatizando desde la sintaxis básica del lenguaje hasta la construcción de objetos y su comunicación, relaciones, etc. Constituye la base para cualquier participante que requiera iniciar o afinar los conceptos fundamentales en el mundo de la Programación en Python para finalmente ser utilizada en ambientes diversos.

Certificado: Al finalizar el curso se le entregará un certificado de aprovechamiento o participación emitido por la Universidad Nacional y reconocido por el MEP y el Servicio Civil.

Total de Horas: 60 (40 horas presenciales y 20 horas extra clase)

Metodología del curso:

Se propone como metodología las clases presenciales y demostraciones prácticas del tema, acompañadas con ejercicios dentro y fuera de clase, desarrollados en grupos y/o de forma individual, se promueve la investigación, la lectura y la solución a problemas, que permitan al estudiante el acercamiento de los temas con la realidad del entorno, y a su vez generar aportes a su propio aprendizaje. De igual forma se promueve la participación activa del estudiante mediante su presentación en público e intercambio de ideas, fomentando la retroalimentación y la asimilación de conceptos importantes.

También se pretende que el estudiante sea creativo en idear y formular conjuntamente con el profesor y compañeros actividades varias, donde se dé a conocer el quehacer de la carrera y del curso.

Objetivo General

Al final de este curso el estudiante estará en capacidad de plantear y diseñar soluciones algorítmicas a problemas computacionales desde la perspectiva de la productividad de desarrollo en el lenguaje de Python.

Objetivos Específicos

  • Reconocer las principales características y ventajas del lenguaje Python, así como de utilizar sus principales elementos para la solución de problemas.
  • Analizar, diseñar y desarrollar soluciones algorítmicas a problemas computacionales.
  • Plantear, diseñar y probar soluciones computacionales a situaciones reales basadas en la legibilidad y facilidad de mantenimiento de código.
  • Conocer las bibliotecas más comunes para la manipulación de la información y su integración de componentes.
  • Conocer y programar aplicaciones para la gestión de información y su tratamiento para obtener valor agregado.
  • Ejecutar estrategias de implementación y depuración de soluciones en Python.

Contenidos:

1. Introducción a Python

  • Historia breve del lenguaje
  • Ventajas y Desventajas de Python
  • Características de Python
  • Entornos de desarrollo
  • Desarrollo Herramientas para Python.
  • Flujo de desarrollo.

2. Elementos básicos del lenguaje

  • Sintáxis del lenguaje Python
  • Convenciones de escritura
  • Comentarios
  • Variables
  • Constantes
  • Datos compuestos
  • Expresiones
  • Operadores
  • Funciones de biblioteca
  • Manejo de cadenas
  • Invocación de métodos
  • Listas, tuplas, conjuntos y diccionarios

3. Estructuras de control

  • Estructuras básicas
  • Selección
  • Iteración
  • Manejo de errores y excepciones

4. Programación orientada a objetos

  • Historia de la programacion orientada a objetos
  • Conceptos fundamentales
  • Abstracción
  • Método
  • Clase
  • Objeto
  • Encapsulamiento
  • Modularidad
  • Ocultación
  • Tipos de acceso
  • Uml
  • Construcción de clases

5. Diseño de programas orientada a objetos

  • Propiedades y operaciones
  • Paquetes
  • Herencia

6. Colecciones y iteradores

  • Introducción a Colecciones
  • Manejo de iteradores
  • Optimización del generador

7. Gestión de Diccionarios

  • Creación de diccionarios
  • Acceso de elementos
  • Operaciones en diccionarios
  • Interacción con otras estructuras

8. Manipulación de archivos

  • Apertura y lectura de archivos
  • Escritura de archivos
  • Optimización de acceso y su relación con el sistema

9. Módulos de la biblioteca estándar

  • Módulos del sistema
  • Módulos de proceso
  • Módulos del asistencia al programador
  • Módulos del connector con servicios web y FTP

10. Módulos, paquetes y espacio de nombres

  • Creación de paquetes
  • Definiciones de espacio de nombres
  • Acceso a nombres

11. Funciones definidas por programador
 

  • Definición de funciones
  • Parametros por omisión
  • Palabras claves como paramétros
  • Retorno de valores
  • Palabras claves como paramétros

12. Introducción a expresiones regulares en Python

  • Definición de expresiones regulares básicas
  • Gestión de expresiones regulares
  • Obtención de resultados

13. Introducción a ciencia de datos  en Python

  • Definición de bases de datos tipo SQL
  • Gestión de bases de datos con módulos de Python
  • Obtención de resultados.
  • Ejecución de consultas SQL
  • Generación de reportes tabulares
  • Generación de reportes gráficos.
  • Envio de reportes por correo electrónico.

14. Introducción a la transformación de datos

  • Definición de dataframes
  • Gestión de dataframes
  • Extracción de datos
  • Transformación y consultas
  • Carga de resultados: archivos, web, base de datos

Reglamento de asistencia:

  • La asistencia a clases es obligatoria.
  • Se permite únicamente la ausencia justificada a 2 lecciones, la ausencia a 3 lecciones implica la pérdida del curso sin derecho a ningún tipo de certificado.
  • Las justificaciones deben de ser por escrito y entregadas de manera presencial al instructor.
  • La nota mínima de aprobación del curso es de 70.
  • Para optar por el certificado de participación deben haber realizado todas las prácticas, tanto por sesión como generales del curso.
  • Para optar por el certificado de aprovechamiento deben haber cumplido con la totalidad del curso y haber aprobado con la nota mínima de 70.
  • Si el estudiante no asiste el día del examen final práctico o teórico, es necesario que presente el comprobante respectivo (médico o de trabajo).

Información sobre devoluciones, congelamientos y cambios del curso

  • Únicamente se le reintegrará al estudiante el 100% del pago del curso, cuando no tuvo apertura por falta de cupo.
  • El estudiante podrá hacer cambio de horario de grupo únicamente la primera semana de clases.
  • El estudiante podrá congelar el pago del curso en la primera semana de clases.
Top of Page