Práctica 06

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 22

UCSM Esc. Prof.

de Ingeniería de Sistemas INFORME DE PRÁCTICAS


Octubre - 2022 LENGUAJES DE
PROGRAMACIÓN I

Práctica N° 06: Archivos en Python


Parte II

Elaborado por:
Diogo Valentino Arteaga Quispe
María Claudia Panclas Aliaga
Saeed Syed Bedregal
Práctica N° 06: Archivos en Python Parte II

GRUPO N° 6

PRÁCTICAS DE LENGUAJES DE PROGRAMACIÓN I

Presentado por:

Diogo Valentino Arteaga Quispe


María Claudia Panclas Aliaga
Saeed Syed Bedregal

ii
Práctica N° 06: Archivos en Python Parte II

RECONOCIMIENTOS

Los autores del presente informe técnico reconocen Y demuestran agradecimiento a las
personalidades siguientes que son autores de textos de programación del lenguaje C, C++ y otras
personalidades y autores de libros de programación Bjarne Stroustrup, Dennis Ritchie, Herb Sutter,
Herb Sutter, James Gosling, James Gosling, Brian Kernighan, Brian Kernighan, Ken Thompson.

PALABRAS CLAVES

Tipos de archivo, abrir, leer, escribir, Python, atributos.

1
Práctica N° 06: Archivos en Python Parte II

ÍNDICE

1. RESUMEN 3
2. INTRODUCCIÓN ........................................................................................................... 3
3. ACTIVIDADES ............................................................................................................... 1
3.1 EXPERIENCIA DE PRÁCTICA N° 01: MANEJO DE ARCHIVOS ...................... 1
3.2 EXPERIENCIA DE PRÁCTICA N° 02: INFORMACION DE ARCHIVO .............. 2
3.3 EXPERIENCIA DE PRÁCTICA N° 03: BUSQUEDA DE PALABRAS................. 3
4. CONCLUSIONES DE LAS ACTIVIDADES: ................................................................. 6
4.1 Conclusión de la primera actividad: .......................................................................... 6
4.2 Conclusión de la segunda actividad: ......................................................................... 6
4.3 Conclusión de la tercera actividad: ........................................................................... 6
5. EJERCICIOS: ................................................................................................................ 6
5.1 PRIMER EJERCICIO ........................................................................................... 6
5.2 SEGUNDO EJERCICIO ....................................................................................... 7
5.3 TERCER EJERCICIO......................................................................................... 11
6. CONCLUSIONES DE LOS EJERCICIOS: ................................................................. 13
6.1 Conclusión del primer ejercicio .......................................................................... 13
6.2 Conclusión del segundo ejercicio ....................................................................... 13
6.3 Conclusión del tercer ejercicio ........................................................................... 14
7. CUESTIONARIO: ........................................................................................................ 14
8. BIBLIOGRAFÍA ............................................................................................................ 17

2
Práctica N° 06: Archivos en Python Parte II

1. RESUMEN

En nuestra sexta práctica hemos trabajado mejor con lo que son los archivos en Python y como podemos
manipularlos, ya sean imágenes, documentos .txt, u otros archivos ejecutables, los podemos organizar en
carpetas individuales y demás. Como sabemos estos se categorizan en archivos de textos o archivos binarios,
no hay mucha diferencia, pero es vital saber como diferenciar al momento de manipularlos. Podemos usar
diferentes funciones como open(), write() y read() y así como podemos usar los atributos con esto. A su vez
podemos usar la sentencia with que es similar a la sentencia try, la sentencia with se usa a su vez con as.

2. INTRODUCCIÓN

Se puede acceder a este archivo de dos formas básicas, ya sea como un archivo de texto, que procesamos
línea por línea, o como un archivo binario, que procesamos byte por byte. Podemos usar open() de Python
para permitirle abrir archivos existentes. Pero si no hay uno, creará uno inmediatamente. Vale la pena señalar
que cuando "abrimos" un archivo, lo vamos a leer para poder acceder a su contenido (si lo hay) e incluso
después de abrirlo podemos escribir en él. Así es como aprendemos a trabajar con archivos de Python y el
módulo pckl

3
Práctica N° 06: Archivos en Python Parte II

3. ACTIVIDADES
3.1 EXPERIENCIA DE PRÁCTICA N° 01: MANEJO DE ARCHIVOS
a) CREAR UN ARCHIVO:
1. Abra el editor de código del Python 3.7(IDE):
2. Utilicen la función open para crear un archivo con el nombre archivoPrueba.txt
3. Cierren el archivo
4. Ejecutar y probar la aplicación.

b) ESCRIBIR TEXTO EN UN ARCHIVO:


1. Abran el archivo archivoPrueba.txt en modo de escritura con la función open
2. Agreguen el siguiente texto “Era el mejor de los tiempos y era el peor de los tiempos; la edad de la sabiduría
y también de la locura;”
3. Cierren el archivo
4. Ejecutar y probar la aplicación.

c) ANEXAR TEXTO EN UN ARCHIVO:


1. Abran el archivo archivoPrueba.txt en modo de anexo con la función open
2. Agreguen el siguiente texto “ la época de las creencias y de la incredulidad; la era de la Luz y de las tinieblas;
la primavera de la esperanza y el invierno de la desesperación.”
3. Cierren el archivo
4. Ejecutar y probar la aplicación.

1
Práctica N° 06: Archivos en Python Parte II

d) DIVIDIR LAS LINEAS DE UN ARCHIVO:


1. Abran el archivo archivoPrueba.txt en modo de lectura con la función open
2. Utilicen la función read para leer el archivo y guarden el texto en una variable
3. Cierren el archivo
4. Utilicen la función split para dividir el texto según el carácter ;
5. Abran el archivo archivoPrueba.txt en modo de escritura con la función open
6. Utilicen un bucle para escribir como líneas separadas el texto dividido, utilicen la función write para escribir
el texto en el archivo
7. Cierren el archivo
8. Ejecutar y probar la aplicación.

3.2 EXPERIENCIA DE PRÁCTICA N° 02: INFORMACION DE ARCHIVO


a) ARCHIVO EXISTE
1. Utilicen la función input para pedir al usuario el nombre del archivo
2. Mediante try y except abran el archivo en modo de lectura
3. Muestren un mensaje en pantalla indicando si se pudo abrir el archivo o si el archivo no existe
4. Cierren el archivo
5. Ejecutar y probar la aplicación

2
Práctica N° 06: Archivos en Python Parte II

b) CREAR UNA FUNCION QUE PERMITA BUSCAR INFORMACION EN UN ARCHIVO


1. En base al paso anterior creen una función que reciba como dato de ingreso el nombre del archivo.
2. Luego de abrir un archivo en modo de lectura utilicen la función read para saber la cantidad de caracteres que
tiene el archivo
3. En caso que no exista ningún carácter en el documento muestren un mensaje en pantalla indicando si el
archivo está vacío
4. Si al abrir el documento existen carácteres muestren un mensaje indicando la cantidad de caracteres que tiene
el documento

3.3 EXPERIENCIA DE PRÁCTICA N° 03: BUSQUEDA DE PALABRAS


a) CREAR UNA FUNCION QUE PERMITA BUSCAR PALABRAS EN UN ARCHIVO
1. Crear una función que permita saber la línea en la que se encuentra una palabra en un archivo.
2. La función va a tener dos datos de entrada, el nombre del archivo y la palabra a buscar
3. Se debe hacer uso de la función open para abrir el archivo en modo de lectura, utilicen la función with para
evitar errores
4. Se debe utilizar la función readlines() para extraer las líneas del texto
5. Creen un bucle para poder navegar en la lista de líneas generadas
6. Separen cada línea en palabras con la función split()
7. Creen un bucle para poder navegar en la lista de palabras generadas
8. Realicen una comparación entre las palabras extraídas del archivo y la palabra a buscar
9. En caso de ser la misma palabra muestren la línea en la que se encuentre la palabra y la palabra a buscar
10. Compilar y ejecutar la aplicación.

Texto a analizar

Espero que la gente tenga

suficiente felicidad para ser dulce, Palabras a buscar:


suficientes problemas para hacerse fuerte,
• suficiente
suficiente dolor para mantenerte humano, • ser

suficiente esperanza para ser feliz

3
Práctica N° 06: Archivos en Python Parte II

4
Práctica N° 06: Archivos en Python Parte II

b) CREAR UNA FUNCION QUE PERMITA GENERAR LA LISTA DE PALABRAS EN


UN ARCHIVO
1. En base al código anterior creen una nueva función que permita generar una lista de todas las palabras de un
texto
2. Esta función debe utilizar dos datos de entrada el nombre del archivo a leer y el nombre del archivo donde se
guardarían la lista de palabras
3. Deben leer el texto del archivo de entrada y separarlo por palabras
4. Deberán crear una lista ordenada de las palabras, eliminando las palabras repetidas
5. Se grabará esta lista en un archivo
6. Compilar y ejecutar la aplicación

5
Práctica N° 06: Archivos en Python Parte II

4. CONCLUSIONES DE LAS ACTIVIDADES:


4.1 Conclusión de la primera actividad:

En la primera actividad hemos podido practicar mejor y así aprende a manipular y manejar
mejor las funciones de crear un archivo, así como también escribir en él, la anexación del
mismo y como dividir el texto de cada archivo en líneas, todo esto lo hemos con los archivos
.txt.

4.2 Conclusión de la segunda actividad:

En la segunda actividad nos ha permitido aprender más de la información de un archivo,


como identificar cuando un archivo existe, así también nos hemos podido dar cuenta de
como crear una función que nos permita encontrar cierta información en el archivo.

4.3 Conclusión de la tercera actividad:


En la tercera actividad hemos reforzado como crear una función en la cual nos permita
buscar ciertas palabras específicas en los archivos y nos dirá en el archivo .txt cuantas de
estás había, así como también hemos aprendido a generar una lista de palabras en un archivo
de texto .txt.

5. EJERCICIOS:
5.1 PRIMER EJERCICIO
Deberán crear un programa que permita leer 3 archivos diferentes y luego generar un nuevo archivo
con la lista de todas las palabras encontradas y el número de veces que se repite, esta lista debe ser
ordenada según el número de veces que se repita una palabra

6
Práctica N° 06: Archivos en Python Parte II

5.2 SEGUNDO EJERCICIO

Se les ha compartido un archivo con el nombre datosusuario.csv, este archivo contiene información
de distintos jugadores, los campos que contienen son los siguientes código de usuario, tipo de
personaje, dinero, nivel actual y el puntaje actual.
a) Deben crear una clase usuario la cual contenga los campos código de usuario, tipo de personaje,
dinero, nivel actual y el puntaje actual.
b) Deberán leer el archivo y crear una lista de usuarios con la información obtenida
c) Se debe crear listas de usuarios según el tipo de personaje (Druid, Monk, Rogue, etc).
d) Ordenar la lista de usuarios de cada personaje según su nivel
e) Finalmente luego de tener la lista de usuarios de cada personaje según su nivel se debe crear
archivos según cada tipo de personaje (Druid, Monk, Rogue, etc), el nombre del archivo debe ser el
tipo de personaje.

7
Práctica N° 06: Archivos en Python Parte II

8
Práctica N° 06: Archivos en Python Parte II

9
Práctica N° 06: Archivos en Python Parte II

10
Práctica N° 06: Archivos en Python Parte II

5.3 TERCER EJERCICIO


Deberán crear una calculadora que pueda realizar diferentes operaciones básica (suma, resta,
división, multiplicación, entre otros)
a) Se debe crear un menú que permita realizar las operaciones de la calculadora y ver el registro de
operaciones realizadas
b) Luego de realizar una operación se debe crear un archivo que guarde el registro de las ultimas
diez operaciones, los datos a guardar son el primer número utilizado en la operación, el segundo
número utilizado en la operación, el tipo de operación y el resultado
c) Si el archivo ya contiene diez operaciones guardadas se deberá eliminar la operación más antigua
y agregar la nueva operación realizada.
d) Al realizar cualquier operación el primer número a utilizar debe ser el resultado obtenido de la
última operación realizada, solo en caso que no exista el archivo con las operaciones realizadas se
le pedirá al usuario el primer y segundo número.

11
Práctica N° 06: Archivos en Python Parte II

12
Práctica N° 06: Archivos en Python Parte II

El historial y la ejecución:

6. CONCLUSIONES DE LOS EJERCICIOS:


6.1 Conclusión del primer ejercicio
En el primer ejercicio podemos observar cómo nos pide crear tres archivos en este caso (arch1,
arch2 y arch3) luego ingresamos poemas en los ejemplos demostrados, y con esta información el
código nos ayudará a encontrar el número de veces que las palabras en esto archivos .txt se repiten,
a su vez los ordenará de menor a mayor y se verá cuando se repite una palabra.

6.2 Conclusión del segundo ejercicio


En el segundo ejercicio nos pide usar un archivo csv que es como un Excel con datos sobre un juego
ficticio, con la ayuda de listas y funciones pero sobre todo sentencia hemos podido implementar un
programa para abrir este archivo csv.

13
Práctica N° 06: Archivos en Python Parte II

6.3 Conclusión del tercer ejercicio


En el tercer ejercicio hemos aprendido como hacer una calculadora, con diferentes opciones como
suma, resta, multiplicación, división, raíz y potencia, a su vez hicimos un historial en el cual nos
podrá decir todas las operaciones realizadas en este programa. Damos dos números y la calculadora
lo resolverá dándonos la respuesta y luego podremos seguir realizando operaciones o bien salir del
programa.

7. CUESTIONARIO:
1. ¿Qué es un archivo?
Estos archivos constan de bytes que representan caracteres regulares, como letras, números
y signos de puntuación (incluidos los espacios), y contienen algunos caracteres de control,
como tabulaciones, saltos de línea y retornos de carro.

2. ¿Qué ventajas ofrece el uso de archivos?


En estos podemos tener una mejor organización y ordenamiento de datos y a su vez estos no
son tan grandes por lo cual no ocupan mucho espacio en la memoria y son más fáciles de
usar.
3. ¿Cómo hacemos uso de los archivos?
Los archivos pueden ser manipulados, editados o creados por un usuario o sistema operativo,
en estos podemos abrirlos, escribirlos, editarlos y leerlos con diferentes funciones que nos
serán útiles para trabajar más rápido.

4. ¿Cuáles son los pasos para la lectura y escritura de un archivo?


Cuando se trata de la lectura hacemos uso de open() con la letra ‘r’ de read y cuando hacemos
uso de la escritura usamos open() con la letra ‘w’ de write.

5. ¿Qué tipos de archivos se pueden abrir en Python?


Podemos abrir archivos de texto (.txt), imágenes, archivos ejecutables entre otros.

6. ¿Cuáles son los modos en los que se puede abrir un archivo y que diferencia existen
entre ellos?
r -> abre un archivo solo para El puntero al archivo está localizado al comienzo del
lectura. archivo. Este es el modo predeterminado de la función.
rb -> abre un archivo solo para El puntero al archivo esta localizado al comienzo del
lectura en formato binario. archivo. Este es el modo predeterminado de la función.
r+ -> abre un archivo para escritura El puntero del archivo está localizado al comienzo del
y lectura. archivo.
w -> abre un archivo solo para Sobrescribe el archivo si este ya existe. Si el archivo no
escritura. existe, crea un nuevo archivo para escritura.
wb -> abre un archivo solo para Sobrescribe el archivo si este ya existe. Si el archivo no
escritura en formato binario. existe, crea un nuevo archivo para escritura.
w+ -> abre un archivo para escritura Sobrescribe el archivo si este ya existe. Si el archivo no
y lectura. existe, crea un nuevo archivo para escritura.
El puntero del archivo esta al final del archivo si este existe.
a -> abre un archivo para anexo. Es decir, el archivo está en modo anexo. Si el archivo no
existe, crea un nuevo archivo para escritura.

7. ¿Por qué es importante cerrar un archivo?

14
Práctica N° 06: Archivos en Python Parte II

Cuando cerramos un archivo en Python reducimos el riesgo de que este sea modificado o
leído de una forma injustificada y así nos evitamos problemas.

8. ¿Cuál es la diferencia entre un archivo de texto y un archivo binario?


Los archivos de texto tienen un contenido el cual es una secuencia de caracteres, o más
conocidos como símbolos, este contenido puede ser visible y modificados por un editor de
texto como el bloc de notas pues este acepta archivos .txt, mientras los archivos binarios son
una forma eficiente de almacenar números en el disco, no se almacena estos números como
cadenas de caracteres, sino que los almacenan como una memoria.

9. ¿Cuándo hacemos uso de Pickle?


Pickle es un proceso mediante el cual se hace uso de una jerarquía de objetos en Python y
este se convierte en una secuencia de bytes, los archivos de texto representan caracteres, los
bytes son archivos binarios con datos personalizados.

10. Muestren un ejemplo del uso de pickle para guarda una lista de números

15
Práctica N° 06: Archivos en Python Parte II

11. ¿Qué es la serialización?


Es un proceso que consiste en convertir un objeto en una secuencia de bytes donde se
almacena un objeto o lo transmite a la memoria, a la base de datos o a los archivos, su
propósito principal es cuando guardamos el estado de un objeto para que lo volvamos a crear
cuando sea necesario.
12. ¿Qué permite hacer la función seek?
Es aquella función que permite cambiar la posición del identificador de un archivo a una
posición especificada dada, es como un cursor que define desde donde se lee o escribe los
datos en el archivo.

13. ¿Cómo se puede abrir un archivo que este ubicado en una carpeta distinta al proyecto?
Generalmente la función open() es usada para abrir archivos y la ruta de dichos archivos son
especificados dentro de la función. Pero ahora podemos especificar que la ruta normal la
función que abre un archivo de diferente carpeta del proyecto será como:
f = open("C:\\Users\\Directory\\archivo.txt")

14. ¿De qué manera se podría evitar un error en el programa al abrir un archivo que no
existe?
Con la sentencia try, sin embargo, podrían llegar a haber errores de ejecución y el bloque se
dejará de ejecutarse y es cuando el bloque except se ejecutará debido a que try fallará debido
al error pues no se encontró el archivo.

15. ¿Cómo funciona el puntero al leer un archivo?


Dependiendo del modo el puntero funciona de diferentes formas:
Con ‘r’ el puntero abrirá el archivo solo para la lectura.
Con ‘rb’ lo abrirá para lectura en formato binario.
Con ‘r+’ se abrirá para la escritura y lectura
Y con ‘a’ se abre para anexo.

16. ¿Qué métodos existen para leer un archivo?


Existen diferentes formas de leer un archivo de texto. como la función open() , los métodos
read() , readline() , readlines() , close() y la palabra clave with.

17. Muestren un ejemplo de cómo se podría crear una copia de un archivo

16
Práctica N° 06: Archivos en Python Parte II

18. ¿Qué información podemos obtener relacionada a un archivo?


Nosotros podemos obtener el nombre, la longitud, la condición ya sea abierta o cerrada),
como también sus atributos entre otros.

19. ¿Por qué se utiliza la sentencia with para abrir un archivo?


Se utiliza de una forma diferente, ya que está sentencia with brinda al código una mejor y
mayor organización, la cual nos permitirá que sea más entendible. Nos ayudará con lo errores
de sintaxis.

8. BIBLIOGRAFÍA
1. Fernández Montoro, Arturo, "Python 3 al Descubierto", 2da Edición, Editorial ALFAOMEGA, México, Año
2013.
2. Horstmann, Cay S., Necaise, Rance D. "Python for Everyone", 2nd Edition, John Wiley & Sons, Inc., New
Jersey, Año 2014.
3. Ascher, David, Lutz, Mark, "Learning Python", 2da Edición, O’Reilly Media, Inc., Sebastopol, CA, Año 2003.
4. Barry, Paul, Griffiths, David, "Head First Programming", O’Reilly Media, Inc., Sebastopol, CA, Año 2009

17

También podría gustarte