truc2geek

2012/09/12

Python et les boucles

Filed under: Programmation, Python — Étiquettes : , , , , , , , , , , , — truc2geek @ 22:41

1er exemple : for

on utilise l’instruction for pour boucler sur les éléments stockés dans le tuple

résultat :

2e exemple : break

on boucle à nouveau sur les éléments stockés dans le tuple, mais à chaque passage on extrait les 4 caractères de droite, qui correspondent à l’année, pour tester et on sort de la boucle dès qu’on arrive à 2012.
l’instruction break permet de sortir de la boucle

résultat :

3e exemple : continue

on a deux variables de type tuple : la première contient une liste des mois, l’autre contient la liste de valeurs correspondantes.
on définit un seuil à 24000, et on liste les mois pour lesquels la valeur est supérieure à ce seuil.
l’instruction continue permet de passer directement à l’itération suivante de la boucle.

résultat :

4e exemple : pass

on a les deux mêmes tuples (la liste des mois et la liste des valeurs) et le seuil.
on liste les mois de l’année 2011 pour lesquels la valeur est supérieure au seuil.
ici on définit explicitement les cas qu’on ne traitera pas : l’instruction pass signifie « ne rien faire ».
on traitera tous les autres cas.

résultat :

5e exemple : while

ici on utilise une variable comme compteur, vIndex, pour boucler sur les 12 mois de l’année.
on l’initialise à 0 pour qu’elle serve aussi d’index pour récupérer les valeurs dans les tuples.
on l’incrémente à chaque passage dans la boucle.
while permet de vérifier la valeur de vIndex avant chaque itération.

résultat :

6e exemple : range

la fonction range(), dans sa forme la plus simple, retourne une liste de nombre qui va de 0 jusqu’au nombre indiqué – 1
un test dans le shell de l’IDLE :

on peut aussi transmettre deux valeurs à cette fonction, auquel cas la 1e valeur sera la valeur de début, et la 2e valeur sera celle de fin :

si on transmet trois valeurs à la fonction range(), elles correspondront respectivement à :
la valeur de début
la valeur de fin
le pas

7e exemple : lire un fichier texte

on a le fichier source nommé « Fichier.txt », encodé en ‘utf-8 sans BOM’, qui contient :

année 2009
janvier 2009;19000
février 2009;20000
mars 2009;22700
avril 2009;23400
mai 2009;23200
juin 2009;17150
juillet 2009;9650
août 2009;7900
septembre 2009;9850
octobre 2009;12600
novembre 2009;15000
décembre 2009;15300
année 2010
janvier 2010;23500
février 2010;25800
mars 2010;27500
avril 2010;28300
mai 2010;22900
juin 2010;19150
juillet 2010;13400
août 2010;11800
septembre 2010;18000
octobre 2010;20700
novembre 2010;22500
décembre 2010;25600
année 2011
janvier 2011;24300
février 2011;26200
mars 2011;29000
avril 2011;31500
mai 2011;27700
juin 2011;22900
juillet 2011;14500
août 2011;11600
septembre 2011;19300
octobre 2011;19500
novembre 2011;21000
décembre 2011;24000
année 2012
janvier 2012;24600
février 2012;25100
mars 2012;27600
avril 2012;29200
mai 2012;25400
juin 2012;24000
juillet 2012;19600
août 2012;12400
on va lire ce fichier texte et afficher le contenu de chaque ligne dans la console, avec l’instruction for

résultat :

on ne voit ici que la fin mais si on scrolle dans la console, on retrouve bien tout le contenu du fichier texte.

8e exemple : écrire un fichier texte

on écrit dans un fichier texte, toutes les valeurs contenues dans un tuple.

résultat console :

le fichier texte généré :

9e exemple : écrire un fichier texte

on réutilise le fichier source de l’exemple 7 :

année 2009
janvier 2009;19000
février 2009;20000
mars 2009;22700
avril 2009;23400
mai 2009;23200
juin 2009;17150
juillet 2009;9650
août 2009;7900
septembre 2009;9850
octobre 2009;12600
novembre 2009;15000
décembre 2009;15300
année 2010
janvier 2010;23500
février 2010;25800
mars 2010;27500
avril 2010;28300
mai 2010;22900
juin 2010;19150
juillet 2010;13400
août 2010;11800
septembre 2010;18000
octobre 2010;20700
novembre 2010;22500
décembre 2010;25600
année 2011
janvier 2011;24300
février 2011;26200
mars 2011;29000
avril 2011;31500
mai 2011;27700
juin 2011;22900
juillet 2011;14500
août 2011;11600
septembre 2011;19300
octobre 2011;19500
novembre 2011;21000
décembre 2011;24000
année 2012
janvier 2012;24600
février 2012;25100
mars 2012;27600
avril 2012;29200
mai 2012;25400
juin 2012;24000
juillet 2012;19600
août 2012;12400
on va effectuer un traitement en trois étapes :
1 : lire le fichier texte et stocker les valeurs dans une liste contenant 12 éléments, pour les 12 mois ; chaque élément sera une liste contenant 3 éléments, pour les 3 années de 2009 à 2011
2 : calculer et stocker dans une nouvelle liste, la moyenne pour chaque mois
3 : écrire la moyenne de chaque mois dans un nouveau fichier texte

le code :


résultat console :



le fichier texte généré :

Publicités

Laisser un commentaire »

Aucun commentaire pour l’instant.

RSS feed for comments on this post. TrackBack URI

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

Créez un site Web ou un blog gratuitement sur WordPress.com.

%d blogueurs aiment cette page :