Ejemplo Ficheros o Archivos. Práctica 7.
Ficheros de Texto
Nociones básicas y ejemplo
Pasos a seguir:
Para trabajar con archivos:
Se abre el archivo.
Se lee o se escribe en el archivo.
Se cierra el archivo.
Paso 1. Abrir
Sintaxis
nombre = open(<ruta del archivo>, <modo>)
Donde:
ruta del archivo, es tipo str que indica el directorio donde está el archivo.
modo es tipo str que indica cómo se accede al archivo (tipos de acceso).
Tipo de acceso
Si no se indica el tipo de operación el archivo se abrirá en modo de lectura.
r\' es el modo de lectura.
\'w\' es un modo de escritura. En caso de existir un archivo, éste es sobrescribe.
\'a\' es un modo de escritura. En caso de existir un archivo, comienza a escribir al final de éste.
\'x\' es un modo de escritura para crear un nuevo archivo. En caso de que el archivo exista se emitirá un error de tipo FileExistsError.
\'+\' es un modo de escritura/lectura
Paso 2. Leer o escribir el archivo
Paso 2. Leer
archivo.readline(
). Lee línea a línea. Leerá el texto desde la posición en que se localice hasta encontrar el caracter de escape retorno de línea (\n).archivo.read()
. Todo el archivo.
Paso 2. Escribir un archivo
archivo.write()
.
Paso 2. Leer o escribir el archivo
archivo.close()
.
Enunciado
Introducir las notas del primer y segundo parcial de los alumnos de la asignatura Informática para ingeniería. Para ello, previamente le preguntará al usuario cuantos alumnos va a introducir. Estos datos se almacenarán en un archivo.
Análisis:
Preguntar al usuario cuantos alumnos va a introducir (verificar que sea mayor que 0 y menor 90).
Pedir las calificaciones de cada uno de los alumnos sus calificaciones (deben ser que cero y menor que 10).
Almacenar la información en el archivo.
Diagrama

Código crear el archivo
print("Almacena notas")
#Abrir el archivo el archivo
archivo=open("datos.txt","a")
#Cuantos datos vas a introducir
cuantos_alumnos_introducir=int(input("Dame el número de alumnos a introducir?"))
# Pedir las valores y los almaceno
for i in range(cuantos_alumnos_introducir):
nombre=input("Dame el nombre")
archivo.write(nombre+";")
nota=float(input("Dame la nota 1"))
nota1=float(input("Dame la nota2"))
#almacena la información en el archivo, separándola por ;en el archivo
texto=str(nota)+";"+str(nota1)+"\n"
archivo.write(texto)
#Cierro el archivo
archivo.close()
print("Fin de programa")
Archivo Resultado
Código leer archivo (read)
#Abrir el archivo
archivo=open("datos.txt","r")
#Visualizo los datos del archivo
print(archivo.read())
archivo.close()
Código leer archivo (readlines)
#abro el archivo
archivo=open("datos.txt","r")
linea=1
#leo el archivo linea a linea y visualizo
for lineas in archivo.readlines():
print("numero", linea, " ", lineas)
linea+=1
archivo.close()
Evitar errores
Evita que el programa rompa, pero no se sabe cuál es el error
try:
archivo=open("datos.txt","r")
except:
print("Se ha generado un error")
Error: Verificar si existe un archivo
No se puede añadir datos, ni leer un archivo que no existe. Para evitar un error, se debe importar el módulo os
y verificar que el archivo exista, os.path.exists
.
import os
nombre_del_archivo="archivo.txt"
if os.path.exists(nombre_del_archivo):
print("Existe el archivo")
else:
print("El archivo no existe")
Error: Problemas con el directorio de trabajo
Se debe importar el modulo os, utilizando la import os, os.getcwd().
nombre="ejemplo"
archivo=os.getcwd()+ "/" + nombre + ".txt"
Probarlo
Última actualización
¿Te fue útil?