Curso de Python – 8. Ficheros


Programamos para que una máquina gestione los datos por nosotros y como nosotros queremos. Los ficheros permitirán guardar tanta cantidad de datos de datos como queramos, unos ficheros con información antes de ser procesada y otros con la información después de ser procesada; por ello serán una de las principales entradas y salidas de nuestro programa.

Este artículo forma parte del curso completo de Python

Teoría

8.1- Ficheros y Directorios

Un sistema operativo (Windows, Linux, Mac, Android, etc.) gestiona los datos con ficheros y estos estarán clasificados en estructuras de directorios. Saber gestionar los ficheros y directorios será un punto crucial a la hora de trabajar con ellos.

Para saber más en las siguientes entradas:

8.2- Rutas (Path)

La ruta es el camino a seguir a través de los directorios para alcanzar un fichero o varios ficheros. Con el método Path será muy fácil y práctico llegar a utilizar tantos ficheros como queramos.

Ejercicios

Ejercicio 8.1-crear_fichero_y_leer_fichero.py

Con código Python crea un directorio en una ubicación de tu ordenador y dentro un fichero.

Dentro del fichero escribe cinco líneas de números aleatorios del 1 al 10 (Parte 1).

Luego lee ese fichero e imprime cada línea por pantalla.

A continuación, añade al final del fichero un par de líneas de texto (Parte 2).

Y vuelve a leer el fichero.

Ejercicio 8.2-futbolistas.py

Dado el fichero “futbolistas.txt” en el que en cada línea contiene datos de un futbolista, se pide:

  1. Implementar una función llamada “file_to_list(file_dir)” que dada la ruta del fichero futbolista.txt, devuelva una
    lista en la que cada elemento corresponde con una línea del fichero; es decir, que cada elemento representa a los datos del futbolista.
  2. Implementar una función llamada “get_top_goals_players(list_players, top_n)” que dada la lista de futbolistas
    devuelva en otra lista los “top_n” futbolistas más goleadores.
  3. Implementar una función llamada “get_players_by_team(list_players, team)” que dada la lista de futbolistas devuelva
    en otra lista con todos los jugadores que han militado en el equipo que se pasa como parámetro (team), ordenados de forma descendente por el número de minutos que han jugado.
  4. Implementar una función llamada “write_list_to_file(list_to_write, file_dir)” que dada la lista que se pasa como
    parámetro (list_to_write), escriba en el fichero que se pasa como parámetro “file_dir” cada elemento de la lista en una línea.
  5. Escribir las listas creadas en los puntos b y c en un fichero, utilizando la función implementada en el punto d.

En el fichero de futbolistas.txt, cada línea contiene datos de un jugador de futbol y los datos están separados por el separador “::”. Los datos que hay en cada posición son los siguientes:

1id14PartidosCompletos27Numligas
2Apodo15PartidosSuplente28NumCopasDelRey
3Nombre16PartidosSustituidos29NumSuperCopas
4FechaNacimiento17partidosPorTemporadas30NumChampions
5LugarNacimiento18PorcentajePartidos31NumUEFAs
6Pais19MinutosJugados32NumEuropaLeagues
7Altura20MinutoPorPartido33NumSuperCopasEuropa
8Peso21Goles34NumMundialesClubes
9Demarcacion22TarjetasAmarillas35NumIntercontinentales
10NumTemporadas23TarjetasRojas36NumMundiales
11NumEquipos24PartidosSeleccionEspaniola37Numeurocopas
12PartidosJugados25GolesSeleccionEspaniola38ValorMercado
13PartidosTitular26Equipos  

Comparte esta entrada en:
Safe Creative #1401310112503
Curso de Python – 8. Ficheros por "www.jarroba.com" esta bajo una licencia Creative Commons
Reconocimiento-NoComercial-CompartirIgual 3.0 Unported License.
Creado a partir de la obra en www.jarroba.com

Deja una respuesta



Tu dirección de correo electrónico no será publicada.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies

ACEPTAR
Aviso de cookies