• Aucun résultat trouvé

8 Manipulation de chiers

N/A
N/A
Protected

Academic year: 2022

Partager "8 Manipulation de chiers"

Copied!
2
0
0

Texte intégral

(1)

BCPST2

95 0 8 Manipulation de chiers

©Exercice 1: Lecture et écriture de chiers texte (D'après une idée originale de Franz Ridde)

1) Mise en place du matériel

Copier les chier poeme-pi.txt, foot.txt et population.txt dans votre répertoire dédié à ce TD. Les ouvrir avec le bloc-note pour voir à quoi ils ressemblent, puis les fermer.

2) a) Relire la partie de l'aide-mémoire consacrée aux méthodes sur les chiers.

b) Consulter une documentation de votre choix sur les méthodes split et strip.

3) Goaaaaaal ! !

Ecrire une fonction qui ouvre le chier foot.txt et qui fournit en paramètre de sortie la liste des listes [nb-buts,nom,pays].

>>> foot()

[[15, 'Ronaldo', 'Bresil'], [14, 'Muller', 'RFA'], [14, 'Klose', 'Allemagne'], [13, 'Fontaine', 'France'], [12, 'Pele', 'Bresil'], [11, 'Kocsis', 'Hongrie'],

[11, 'Klinsmann', 'Allemagne'], [10, 'Rahn', 'RFA'], [10, 'Cubillas', 'Perou'], [10, 'Lato', 'Pologne']]

4) Dissection syntaxique

Ecrire une fonction qui, à partir d'un paramètre entiern, extrait du chier poeme-pi.txt tous les mots de longueur n et les renvoie en paramètre de sortie sous forme d'une liste de chaines de caractères.

Pour simplier, on considère que les signes de ponctuation sont des lettres. Ainsi j'aime et ! seront considérés comme des mots.

>>> dissection(4)

['peut', 'Pour', 'moi,', 'Tout', 'trop', 'vous', 'avez', 'plan', 'aire', 'trop', 'trop', 'avec', 'zele']

5) Ecriture d'un chier texte

On s'intéresse à la suite(un) dénie par u0 =u1 = 1 etun+2=un+1+un[2014]. Remarque:

a[2014] signie que l'on considère le reste de la division euclidienne deapar2014. En python, c'est a%2014

a) Ecrire une fonction qui écrit les 1000 premiers termes de cette suite dans un chier texte. Ouvrir ledit chier avec le bloc-note pour vérier, puis le refermer.

b) Faire la même chose mais cette fois en séparant les nombres par une tabulation et en écrivant dix nombres par ligne.

6) A partir du chier population.txt :

a) Créer la liste des listes [dept,com,pop] (attention, le département ne doit pas être un entier à cause de la Corse (2A et 2B)). En revanche la population est un entier.

b) Répondre aux questions suivantes :

1. Combien la France compte-telle de communes ? 2. Quelle est la population totale de la France ?

3. Quelle est la ville la plus peuplée (suspense insoutenable. . . ) ? 4. Quelle est la population de Lyon ?

5. Quelle est la population de la creuse (numéro23) ?

c) Créer un chier semblable au chier population.txt mais avec seulement les villes de plus de10000 habitants.

2014-2015 page 1 sur 2 TSVP

(2)

BCPST 951/952/953 Lycée du Parc TD 8

©Exercice 2: Création de chiers Excel

1) Consulter une documentation sur la bibliothèque xlwt.

Intéressez-vous particulièrement à la façon de créer un classeur ( workbook ), d'y ajouter une feuille ( sheet ), et d'écrire( write ) une valeur, une chaine de caractères, ou une formule dans une cellule.

Remarque:

Cette bibliothèque n'est actuellement disponible que sous Python 2. Passer donc à Python 2 si vous étiez sous Python 3.

Voici un résumé très succint :

â Commencer par importer les fonctions dont on aura besoin : from xlwt import Workbook

from xlwt import Formula

â Créer un classeur : book = Workbook(). On manipulera ce classeur par la suite à l'aide de son nom : ici, book.

â Créer une feuille dans ce classeur : feuille= book.add_sheet('titre de la feuille').

â Ecrire dans une cellule de cette feuille : feuille.write(numéro de ligne, lettre de colonne,'texte')

â Ecrire une formule dans une cellule : Remplacer dans la commande précédente le 'texte' par Formula("la formule")

â Enregistrer le classeur : book.save('nom du classeur')

2) Chaque été, quelques groupes d'élans quittent le parc national et s'aventurent dans les alentours pour piller les vergers (les élans raolent des pommes). Pour étudier l'impact des ces pillages sur la production agricole de la région, des rangers vont suivre chaque groupe d'élans et noter, pour chaque individu du groupe, combien il mange de pommes chaque jour. L'étude de chaque groupe durera jusqu'à ce que le groupe retourne dans le parc national. Un stagiaire d'une Ecole Nationale Vétérinaire est chargé de saisir les données sur une feuille de calcul Excel. Pour chaque groupe il doit remplir un tableau comportant autant de lignes que d'élans dans le groupe et d'autant de colonnes que le nombre de jours qu'a duré l'escapade du groupe. Le tableau doit en outre calculer le nombre total de pommes mangées par chaque individu du groupe, le nombre total de pommes mangées par le groupe pour chaque jour, et enn le nombre total de pommes mangées par le groupe durant toute l'étude.

Déjà furieux de devoir rester devant son pc à faire de la saisie alors qu'il pensait que ce stage lui permettrait de se promener en forêt et de voir des animaux (oui, il aime les animaux . . . ), il n'a pas très envie de devoir créer manuellement tous les tableaux avant de pouvoir les remplir. Pour l'aider, écrire une fonction qui prend en entrée une liste donnant pour chaque groupe le nombre d'individus et le nombre de jours de l'étude et qui édite le chier excel contenant les tableaux aux dimensions adpatées à chaque groupe et avec les formules de calcul déjà prêtes pour que notre stagiaire n'ait plus qu'à saisir les données collectées par les rangers.

2014-2015 page 2 sur 2 FIN

Références

Documents relatifs

**** Exercice 9 (1) : Écrire en Python une fonction qui prend en entrée une liste et un nombre et retourne une liste de listes contenant des éléments de la liste en entrée

Exceptions : bail, émail, corail, soupirail, travail, vitrail, vantail font leur pluriel en aux. Les noms terminés par x, s ou z ne changent pas au pluriel

Relie chaque panier à la bonne étiquette nombre.. Relie chaque panier à la bonne

Pour chaque ensemble, écris le nombre d'objets.. Pour chaque ensemble, écris le nombre

Exercice 1 Pour chacune des suites définies ci-dessous, exprimer u n+1 en fonction de n, et simplifier les expressions en développant puis

Lire dans la table des t (tTable.txt, fourni) la valeur limite de t, pour un degré de. liberté (N-1) et un risque

4 Écris chaque nombre sous forme décimale puis en notation

4  Écris chaque nombre sous forme décimale puis en notation