General
Programación
Programación
|
Programación en Python (2020)
Profesores Michael González HarbourJosé Javier Gutiérrez García José Carlos Palencia GutiérrezJosé Ignacio Espeso MartínezAdolfo Garandal Martín Departamento de Ingeniería Informática y Electrónica
|
La asignatura trata de que alumnos sin experiencia previa en la programación de computadores sean capaces de diseñar y escribir aplicaciones sencillas en el lenguaje de programación Python. Para ello será importante ser capaz de diseñar algoritmos sencillos y usar estructuras de datos básicas. La asignatura se orienta hacia una visión orientada a objetos de las aplicaciones informáticas y el lenguaje Python. Este lenguaje es uno de los más más populares actualmente.
Palabras Clave de la AsignaturaProgramación, Python, Lenguajes de programación, Programación orientada a objetos, Informática. |
Datos identificativos de la Asignatura
|
1. Introducción a los lenguajes de programación
Lenguajes de programación. Compiladores e intérpretes. El lenguaje Python. El ciclo de vida del software. Concepto de algoritmo. Encapsulamiento de datos y algoritmos. Estructura de un programa. Funciones. Estilo de codificación.
2. Datos y expresiones
Números. Operaciones y expresiones. Variables. Booleanos. Strings. Uso de funciones matemáticas. Variables y paso de parámetros. Listas y tuplas.
3. Clases
Concepto de clase y objeto. Definición de clases. Creación y uso de objetos. Atributos y métodos de instancia y de clase. Espacios de nombres. Módulos y paquetes.
4. Estructuras algorítmicas
Instrucción condicional. Instrucción condicional múltiple. Instrucciones de bucle. Recursión. Descripción de algoritmos mediante pseudocódigo.
5. Estructuras de datos
Tablas. Algoritmos de recorrido. Algoritmos de búsqueda. Conjuntos. Tablas multidimensionales. El paquete NumPy. Diccionarios. Tipos enumerados.
6. Tratamiento de errores
Excepciones. Tratamiento de excepciones. Patrones de tratamiento de excepciones. Lanzar Excepciones. Usar nuestras propias excepciones. Acciones de limpieza.
7. Entrada/salida
Escritura de texto con formato. Lectura de números con formato. Ficheros. Lectura de ficheros de texto. Escritura de ficheros de texto.
8. Herencia y polimorfismo
Jerarquía de clases. Herencia. Clases abstractas. Polimorfismo.
Apéndice A: uso de un entorno integrado de desarrollo de programas
Entorno de desarrollo de programas spyder. Gestión de proyectos. Analizar, cargar y ejecutar el programa. La depuración. Generación de documentos
Apéndice B: Paquete fundamentos
Lectura de datos desde una ventana. Escritura de resultados en una ventana. Mensaje de texto sencillo en una ventana. Menú que presenta botones en una ventana. Dibujo, para mostrar dibujos e imágenes en una ventana.
Básica
Python 3 tutorial: https://docs.python.org/3/tutorial/
Tutorial de Python 3 en castellano: http://docs.python.org.ar/tutorial/3/index.html
Andrés Marzal Varó, Isabel Gracia Luengo, Pedro García Sevilla, "Introducción a la programación con Python 3", Universitat Jaume I, 2014. ISBN: 978-84-697-1178-1. http://repositori.uji.es/xmlui/bitstream/handle/10234/102653/s93.pdf
Libros de consulta
Otro tutorial de Python: https://python-course.eu/python3_course.php
Alex Martelli, Anna Ravenscroft, Steve Holden. "Python in a Nutshell: A Desktop Quick Reference" 3rd edition. O'Reilly Media; 3 edition (May 4, 2017), ISBN-10: 144939292X, ISBN-13: 978-1449392925Eric Matthes. "Python Crash Course: A Hands-On, Project-Based Introduction to Programming". No Starch Press. Edición 1 (noviembre 2015), ISBN-10: 1593276036, ISBN-13: 978-1593276034
Mark Lutz. "Learning Python", 4th Edition. O'Reilly Media, October 2009, Ebook: September 2009. Print ISBN: 978-0-596-15806-4, ISBN 10: 0-596-15806-8. Ebook ISBN: 978-0-596-80598-2, ISBN 10: 0-596-80598-5
Sébastien Chazallet. "Python 3. Los fundamentos del lenguaje - 2ª edición, dic 2016. Eni. ISBN-10: 2409006140, ISBN-13: 978-2409006142
Ángel Pablo Hinojosa Gutiérrez. "Python. Paso A Paso", mar 2016, RA-MA S.A. ISBN-10: 8499646115, ISBN-13: 978-8499646114
Mike Pirnat. "How to Make Mistakes in Python". O'Reilly, October 2015. ISBN139781491934470. https://www.oreilly.com/programming/free/how-to-make-mistakes-in-python.csp
Zed A. Shaw, "Aprenda a programar con Python 3", Anaya Multimedia. Octubre de 2017, ISBN-10: 8441539413, ISBN-13: 978-8441539419
MC-F-001. Capítulo 1. Introducción a los lenguajes de programación
MC-F-002. Capítulo 2. Datos y expresiones
MC-F-003. Capítulo 3. Clases
MC-F-004. Capítulo 4. Estructuras algorítmicas
MC-F-005. Capítulo 5. Estructuras de Datos
MC-F-006. Capítulo 6. Tratamiento de errores
MC-F-007. Capítulo 7. Entrada / Salida
MC-F-008. Capítulo 8. Herencia y polimorfismo
MC-F-009. Apéndice A. Uso de un entorno integrado de desarrollo de programas
MC-F-010. Apéndice B. Paquete fundamentos. Versión 1.1 (enlace a los archivos en formato .zip)
Práctica 1: Piscifactoría. Descripción / Plantilla para informe / Material (.zip)
Práctica 2: Cambio en monedas. Descripción / Plantilla para informe
Práctica 3: Uso de expresiones. Descripción / Plantilla para informe / Material (.zip)
Práctica 4: Creación de objetos. Descripción / Plantilla para informe / Material (.zip)
Práctica 5: Cálculo de escapatorias en un circuito de Fórmula 1. Descripción / Plantilla para informe
Práctica 6: Ascenso de un cohete. Descripción / Plantilla para informe / Material (.zip)
Práctica 7: Movimiento de un robot bidimensional. Descripción / Plantilla para informe / Material (.zip)
Práctica 8: Recorridos en listas de números. Descripción / Plantilla para informe / Material (.zip)
Práctica 9: Recorridos y búsquedas. Descripción / Plantilla para informe / Material (.zip)
Práctica 10: Tratamiento de imágenes. Descripción / Plantilla para informe
Práctica 11: Mareógrafo. Descripción / Plantilla para informe / Material (.zip)
Práctica 12: Oscilador amortiguado. Descripción / Plantilla para informe / Material (.zip)
EJ-F-001. Hoja 1. Datos en Python; Literales; Sangrados
EJ-F-002. Hoja 2. Expresiones y conversiones de tipo
EJ-F-003. Hoja 3. Funciones, expresiones, strings y listas
EJ-F-004. Hoja 4. Clases y objetos
EJ-F-005. Hoja 5. Practicar con strings, instrucciones condicinales y bucles
EJ-F-006. Hoja 6. Practicar con tuplas, listas y conjuntos
EJ-F-007. Hoja 7. Practicar con tablas multidimensionales y arrays de numpi
EJ-F-008. Hoja 8. Excepciones
PE-F-001. Examen de Programación (junio 2019)
PE-F-002. Examen de prácticas de Programación (junio 2019)
PE-F-003. Materiales para el examen de prácticas (julio 2019). Archivo .zip
PE-F-004. Examen de Programación (septiembre 2019)
PE-F-005. Examen de prácticas de Programación (septiembre 2019)
PE-F-006. Materiales para el examen de prácticas (septiembre 2019). Archivo .zip
PE-F-007. Ejercicio de examen de Programación
![]() |
Michael González Harbour
Departamento de Ingeniería Informática y Electrónica |
![]() |
José Javier Gutiérrez García
Departamento de Ingeniería Informática y Electrónica UNIVERSIDAD DE CANTABRIA |
![]() |
José Carlos Palencia Gutiérrez
Departamento de Ingeniería Informática y Electrónica |
![]() |
José Ignacio Espeso Martínez
Departamento de Ingeniería Informática y Electrónica UNIVERSIDAD DE CANTABRIA |
![]() |
Adolfo Garandal Martín
Departamento de Ingeniería Informática y Electrónica |
Contacto Información legal Sobre OCW RSS Universidad de Cantabria