Skip to content

Latest commit

 

History

History
69 lines (42 loc) · 4.44 KB

programa.md

File metadata and controls

69 lines (42 loc) · 4.44 KB

Curso de Capacitación y Extensión: Introducción a Programación Científica con Python

Responsables

Dr. Osvaldo Martin CONICET-IMASL

Dr. Enrique Miranda CONICET-IMASL / UNSL

Fundamentos:

Python es un lenguaje de alto nivel y de propósito general, lo que significa que se puede usar para resolver casi cualquier problema. Por otra parte, en el contexto de este lenguaje, se han desarrollado un sinnúmero de librerías/herramientas que facilitan su aplicación en una amplia gama de disciplinas y problemas. Profesionalmente, Python es considerado, entre otras cosas, para computación científica, análisis de datos e inteligencia artificial. Muchos desarrolladores también usan Python para desarrollo back-end web, herramientas de productividad, aplicaciones de escritorio y hasta distintos tipos de juegos.

El término programación científica está relacionado a la utilización de scripts/programas orientados a la resolución analítica de un problema específico y formulado rigurosamente. Algunos ejemplos son: invocar funcionalidades de programas externos a través de lenguajes de alto nivel (como Python), integrar aplicaciones (o scripts) en distintos lenguajes, realizar análisis de datos, realizar limpieza y depuración de grandes datos, utilizar expresiones regulares, parseo y análisis de información en formato texto, simular sistemas dinámicos, entre otras.

Este curso propone brindar a los participantes una introducción a Python, un lenguaje ampliamente utilizado para programación científica.

Objetivos:

Al finalizar el curso se espera que el participante sea capaz de:

  • Incorporar conceptos generales y elementos básicos de programación científica usando el lenguaje Python.
  • Utilizar eficaz y eficientemente un enfoque basado en los principios de la programación científica para resolver problemas de diversa índole con Python.
  • Diseñar, codificar y depurar programas de complejidad baja a moderada utilizando Python.

Metodología y condiciones de aprobación:

  • Extensión: 20 horas cátedra.

  • Requisitos de aprobación:

    • 90 % de asistencia al curso.
    • Aprobación de un trabajo práctico integrador.
  • Modalidad: clases teórico-prácticas

Programa

  1. Introducción a la Programación Científica. Actividades consideradas en el contexto de Programación Científica. Algunos paradigmas y lenguajes de programación más utilizados. Herramientas y entornos utilizados en el curso.

  2. Introducción al lenguaje Python Breve introducción a Python. Génesis. Características del funcionamiento y procesamiento del lenguaje. Variables, expresiones y sentencias. Valores y tipos. Nombres de variables y palabras claves. Operadores y operandos. Strings. Comentarios.

  3. Construcciones en Python Sentencias de selección. Sentencias de iteración. Funciones. Definición y usos. Composición. Flujo de ejecución. Parámetros y argumentos. Variables y parámetros locales. Uso de import y from.

  4. Tipos de Datos Estructurados en Python Listas. Recorrido de listas. Operaciones sobre listas. Slices. Eliminación de elementos. Diccionarios. Iteraciones y diccionarios. Búsqueda inversa. Listas y diccionarios. Objetos mutables e inmutables. Tuplas. Asignación de tuplas. Tuplas como valores de retorno. Listas y tuplas. Diccionarios y tuplas. Comparación de tuplas. Manejo y operaciones sobre strings.

  5. Manejo de Archivos Lectura y escritura. Operadores de formato. Nombres de archivos y paths. Captura de excepciones.

  6. Programación orientada a objetos y librerías específicas de Programación Científica Características de la POO. Clases y objetos. Atributos. Métodos. Análisis de librerías de programación científica y sus facilidades: Numpy, Matplotlib, Pandas, entre otras.

Bibliografía:

  1. Allen B. Downey. Think Python. Segunda edición. O'Reilly Media 2015
  2. Al Sweigart. Automate the Boring Stuff with Python: Practical Programming for Total Beginners. No Starch Press; 2015
  3. Dusty Phillips. Python 3 Object-oriented Programming: Building robust and maintainable software with object oriented design patterns in Python. Tercera edición. Packt Publishing 2018.
  4. Hans Petter Langtangen. A Primer on Scientific Programming with Python. Quinta edición. Springer. 2016
  5. Jake VanderPlas. Python Data Science Handbook Tools and Techniques for Developers. O'Reilly Media. 2015
  6. Luciano Ramalho. Fluent Python: Clear, Concise, and Effective Programming. O'Reilly Media. 2015