Sunteți pe pagina 1din 5

UNIVERSIDAD NACIONAL MAYOR DE SAN MARCOS

Facultad de Ingeniería Geologica, Minera, Metalurgica y Geografica


EAP Ingenieria Ambiental
Curso: Programacion
Prof. G. A. Salinas A.
S11 Clases, Excepciones y Files
(Programacion Orientada a Objetos: POO)

TEMA: Clases en lenguaje Pythom v3.5.3


 Clases, herencia
 Array de objetos
 Implementacion de Clases
 Resolucion de problemas
Duracion Estimada 03:40 horas
I. OBJETIVOS.
Implementacion de Clases y array de objetos
 Abstracion de conceptos como clases.
 Componentes de las clases: Atributos y metodos.
 Especificacion e implementacion de clases.

II. RESUMEN.
En este practica usted aplica los conceptos de la modularizacion de problemas de la realidad
a traves de la abstraccion de clases y array de objetos.

III. IMPLEMENTACION DE LA APLICACION


Excepciones.
Las excepciones se lanza automaticamente al momneto de ejecutarse un programa. Los
errores de ejecucion son llamados comunmente excepciones.
Si durante la ejecucion de un programa surge una excepcion y la funcion no la maeja, la
excepcion se propaga hacia la funcion que la invoco., y si esa no la maneja la excepcion si
se propgando hasta llegar a la funcion inicial y si esta tampoco la maneja enotnces se
interrumpe la ejecucion del programa.

Manejo de excepciones.
Para el manjeo de excepciones los lenguajes proveen una serie de palabras reservadas que
nos permiten manejar las excepciones que pueden surgir y tomar acciones de recuperacion
para eviar la interrupcion del programa o realizar algunas acciones adicionales antes de
interrupir el programa.
Para el caso de Python, el manjeo de excepciones se hace mediante los bloques que utilizan
las instrucciones: try, except y finally
Bloque try:
Aqui v ael codigo que se espera lance una excepcion.
Bloque except:
Esta se encarga la capturar la excepcion lanzada en el bloqueenterior. El lenguaje maneja
una serie de excepciones predefinidas, esto es, de acuerdo puede varios except despues de
un bloque try.
bloque finally:
Es el bloque se ejecuta siempre. Se haya o no lanzado una exepcion.

1
Formato de manejo de excepciones.
try:
#codigo que puede lanzar excepciones
except <NombreExcepcionPredefinida 1>:
#se trata los errores de NombreExcepcionPredefinida 1
except <NombreExcepcionPredefinida 2>:
#se trata los errores de NombreExcepcionPredefinida 2
....
except :
#se trata los errores genericos que no han sidos capturados en los except anterioes.
#Aqui no se trata los errores de sintaxis ni tampoco en los anteriores.
finally:
#este bloque se realiza haya no ha excepciones
# es opcional

Vease ejemplos
Persistencia (Files o Archivos.)
Los files o archivos a veces es denominado "filas secuenciales" por la maenra en que se
almacenan. Es una estructura de datos para almacenamiento secundario (disco duro). En la
POO se denomina peristencia es porqe los objetos persisten en el tiempo y el espacio.

Existe dos tipos archivos de Texto y Binario.


Archivos de Texto
En los archivos de texto se procesan linea por linea
Archivos Binarios.
En los archivos binarios se procesan por byte por byte

Primitivas de acceso a Archivos


Las primitivas se refieren a las operaciones basicas para poder, crear, abrir, tomar , poner,
ultimo y cerrar archivos. Sea F una variable de tipo file y sea v el dato a isertar al file o sea v
la variable que recibe el dato leido del file.
Crear(F)
Se refiere a la accion de crear F una variable de tipo file y que relaciona con el tipo dato a
almacenar.
Abrir(F)
Se refiere a la accion de abrir un file para leer o escribir datos. El cabezal de lectura se
posiciona antes del primer elemento del file.
En Python
Abrir archivo de lectura : f = open("archivo .txt", "r")
Abrir archivo de lectura en binario : f = open("archivo .txt", "rb")
Abrir archivo para escribir desde cero : f = open ("archivo .txt", "w")
Abrir archivo para añadir al final : f = open ("archivo .txt", "a")
Poner(F, v)
Se refiere a que el "cabezal" de escritura avanza una posicion y pone o escribe el dato v en
el file F y estre sera el ultimo elemento del file.
Tomar(F, v)
Se refiere a que el "cabezal" de lectura avanza una posicion y toma o lee el dato del file F y
lo lamacena en el variable v.
Lectura de todo un archivo (completo) : dato = f.read()
Lectura de nbytes (ej. 10 bytes) : dato = f.read(nbytes)

2
Lectura de una línea completa : dato = f.readline()
Ultimo(F, v)
Ultimo es una predicado que devuelve verdad si v correspondew a la amarca de fin de file y
Falso en otro caso.
Marcar o Cerrar (F, v)
El cabeznal de lectura avanza una posicion y pone, escribe o marca el file como cesarrado.

En Lenguaje Python 3.x


Crear y Abrir un archivo.
La funcion open() crear y abre un archivo en un modo de escritura o lectura.
Sea f una variable de tipo de file.
Formato:
f = open("nombreFile.extension", "modeoApertura")
ejemplo:
f = open("alumno.text", "w")
Modos de apertura de un archivo en Python.

Nº MODOS Descripcion
1 w Abre un archivo de texto para escribir
2 wb Abre un archivo binario para escribir
3 w+ Abre un archivo de texto para leer y escribir
4 wb+ Abre un archivo binario para leer y escribir
5 r Abre un archivo de texto para leer
6 rb Abre un archivo binario para leer
7 r+ Abre un archivo de texto para leer y escribir
8 rb+ Abre un archivo binario para leer y escribir
9 a Abre un archivo para agregar
10 ab Abre un archibo binario para agregar
11 a+ Abre un archivo para agregar y leer
12 ab+ Abre un archibo binario para agregar y leer

Metodos para escribir


f.write()
f.writelines
f.read(cantidadDatos)
Lee una cantidad de datos que devuelve como una cadena de texto o un obejto de tatos
bytes.f.read() devolvera una cadena vacia

f.readlines()
Lee una sola linea de archivo

f.tell() # Devuelve un entero que es la posicion actual medida en bytes

3
f.seek(desplazamientoBytes, desdeDonde)
Ejemplo:
f.seek(n) : Ir al byte n del ficher
f.seek(n,0) : Equivalente al anterior
f.seek(n,1) : Desplazarnos n bytes a partir de la posición actual del fichero

mode: retorna el modo de apertura. Ejemplo: modo = archivo.mode


name: retorna el nombre del archivo .Ejemplo: nombre = archivo.name
closed: retorna True si el archivo se ha cerrado. De lo contrario, False. Ejemplo:
archivo.close()

Si ya contamos o ya hemos especificado e implemntado una clase solo nos queda capturar
los elementos objetos y almacenarlos en una estructura array, claro esta para hacerles en
control de calidad se requiere de las operaciones basicas de array que ya se ha visto en
clases anteriores como son leer, mostrar, buscar, insertar, eliminar, editar, etc.

Vease implementacion de la clase alumno analice ejecute y compare con las aplicaciones
modulares vistas de clases anteriores, igualmente la clase VectorAlu, tambien se adjunta la
clase Punto, como podria o que uso podria darle en la clase Alumno?

Por otro lado debe analizar los resultados y los conceptos de la POO. Ver cuales son
atributos, el comportamiento como y cuando se da cuando ejecuta el programa.

Suponga ahora se desea que el metodo mostrarVector(self) muestre con el siguiente


formato, que debe de hacer?

Curso: Programacion
EAP Ingeniria Ambiental

=============================
No. codigo Nombre Nota
-------------------------------------------------
1 100 Eva 15.8
2 102 Adan 12.0
3 104 Abel 18.6
...
9 116 Zacarias 14.5
------------------------------------------------
Sugerencia, crear metodos con ecanbezado1, encabezado2, rayaSimple(), rayaDoble() y
utilizarlos cuando sea necesario.
Ejercicios planteados.

4
1. Especifique e implemente la clase AulaClase con las cuatro operaciones basicas
2. Especifique e implemente la clase AulaLaboratorio con las operaciones basicas.
3. Especifique e implemente la clase Persona (dni, nombre, sexo, edad, direccion).
4. Especifique e implemente la clase Docente con las operaciones basicas.
5. Especifique e implemente la clase Curso con las operaciones basicas.
6. Especifique e implemente la clase Punto con las operaciones basicas.
7. Especifique e implemente la clases acerca de problema contaminacion ambiental del agua,
atmosfera, tierra, mar, etc.

S-ar putea să vă placă și