Presentation Lesson 04
Presentation Lesson 04
2
Contenido
• Manejo errores y excepciones en python
3
Tipos de error
• Errores de sintaxis: errores en la sintáxis de nuestro código. Son detectados por el
compilador o intérprete.
• Errores de programación. Por ejemplo: acceso a un índice que no existe en una lista
4
Manejo de excepciones
try:
bloque código
except <Excepción>:
bloque código
except <Excepción>:
bloque código
except:
bloque código
nally:
bloque código
5
fi
Elevando excepciones
• raise <excepción> nos permite elevar una
excepción para que para que sea tratada
por el bloque que ha invocado al código
que se está ejecutando.
6
Actividad #1
• Escribir un programa que pida al usuario dos n meros enteros y muestre por pantalla su divisi n.
El programa debe:
• Detectar cuando los valores introducidos no son números enteros y volver a pedirlos
• El programa debe capturar el error cuando se realiza la división por cero y debe mostrar un
error y solicitar nuevamente el nuevo valor para el divisor.
• Sugerencias:
• Utilizar funciones
• La excepción que se genera cuando se realiza una división por cero es ZeroDivisionError.
7
ú
ó
Sistema de archivos
• Sistema de almacenamiento de un dispositivo de memoria
8
Caminos relativos
• Es una dirección a partir de la ubicación de nuestro programa.
./carpeta/subcarpeta/subcarpeta/……../archivo
../../……../carpeta/subcarpeta/subcarpeta/……../archivo
9
Caminos absolutos
• Es una dirección a partir del directorio raíz del sistema o disco
/carpeta/subcarpeta/subcarpeta/……../archivo
<drive>:/carpeta/subcarpeta/subcarpeta/……../archivo
10
Tipos de archivo
• Archivos tipo texto
• Binarios
• Los modos se pueden combinar con las opciones ’t' y 'b' para
esceni car que el archivo es tipo texto o binario respectivamente.
12
fi
fi
fi
fi
Actividad #2
• Escribir un programa que pida solicite al usuario su nombre y guarde en un
archivo con nombre mensaje_<nombre>.txt el mensaje Hola <nombre>!!!, donde
<nombre> es el nombre introducido por el usuario
13
Leer desde un archivo
• read() devuelve todo el contenido del archivo como una
cadena o bu er
14
ff
Actividad #3
• El archivo notas.txt contiene el listado con las notas nales de los estudiantes durante un
semestre. Escribir un programa que lea dicho archivo y muestre un reporte de cada estudiante:
Edad: <edad>
Sexo: <sexo>
Cali caciones:
15
fi
fi
fi
fi
fi
Actividad #4
• El archivo notas2.txt contiene el listado con las notas nales de los estudiantes durante un semestre. Un estudiante puede haber cursado más asignaturas
que otro. Escribo un programa que lea dicho archivo y muestre un reporte de cada estudiante:
Cali caciones:
<asignatura>:<nota nal>
<asignatura>:<nota nal>
<asignatura>:<nota nal>
<asignatura>:<nota nal>
16
fi
fi
fi
fi
fi
fi
fi
Escribir a un archivo
• write(cadena) Escribe el valor de cadena al archivo. El
comportamiento varía según el modo de apertura del
archivo.
17
Actividad #5
• El archivo diccionario_es-en.txt contiene un diccionario de palabras en Español
con su correspondiente traducción al Inglés. Escribir un programa que permita
agregar las traducciones para las palabras perro y gato.
18
Trabajo con carpetas
• Biblioteca OS
• os.path.dirname(path)
• os.path.isdir(path)
• os.path.is le(path)
• os.path.exists(path)
• os.listdir(path)
• os.getcwd()
• os.mkdir(path)
• os.makedirs(path)
• os.rmdir(path)
• os.removedirs(path)
• os.rename(nombre_anterior, nuevo_nombre)
19
fi
Actividad #6
• Modi car el programa de la Actividad #3 para que, en lugar de escribir en
pantalla, guarde la información de cada estudiante en una carpeta llamada
per les que tendrá la siguiente estructura:
• Per les
• per l.txt -> archivo texto que contiene el sexo y la edad del estudiante
• Materias
20
fi
fi
fi
fi
fi
fi
fi
Archivos comprimidos
• Biblioteca GZIP
• gzip.open(path, modo)
21
Actividad #7
• Escribir un programa que abra el chero sdg_08_10.tsv.gz que contiene
información sobre el PIB per cápita de los países de la Unión Europea, pregunte
por las iniciales de un país y muestre el PIB per cápita de ese país de todos los
años disponibles.
22
fi