Résolu Programmation Python: Ma boucle For.

Solutions (2)
|
Bonjour à tous, aujourd'hui je m'adresse à vous pour que l'on m'explique comment s'utilise la boucle for, car je lis un livre en se moment, mais cette boucle n'est pas vraiment bien expliquée. Je ne sais donc pas vraiment comment l'utiliser et son fonctionnement, son principe ...

Voila tout est dit, j'attend vos réponses avec impatience.

PS: Je sais qu'on peut toujours ou presque la remplacer par une boucle While,mais j'aimerais savoir la maîtriser aussi bien que la boucle while . Merci :) 
Contenus similaires
Meilleure solution
partage
, Vieux c*n psychorigide |
La boucle for a plusieurs utilisations, elle peut s'utiliser pour parcourir une liste ou un tableau, une chaine de caractère dans ce cas :

  1. for element in variable :
  2. [indentation] print(element)


"variable" étant de type liste, tableau ou tuple, ou chaine de caractère. Cette solution évite la déclaration d'une variable "compteur" qui va parcourir la liste comme on ferait avec un while . A noter qu'ici la variable "element" n'a pas besoin d'être déclarée avant, et tu peux l'appeler comme tu veux pour rendre le code plus lisible ex :

  1. for pays in listePaysEuropeens :


Tu peux aussi l'utiliser pour parcourir des nombres :

  1. for i in range(x,y):
  2. [indentation] print(i)


Cette fois ci la boucle va parcourir les nombres de x à (y-1), (y exclus) . (ici aussi, le i n' pas besoin d'être déclaré avant utilisation et peut être appelé comme tu veux).

Il est aussi possible de l'utiliser pour lire dans un fichier

  1. fichier = open("fichier","r")
  2. for ligne in fichier.readlines():
  3. [indentation]print("ligne : " + ligne)


Tu peux aussi parcourir une chaine de caractères lettre par lettre :
  1. for lettre in mot


Après tu peux évidemment les imbriquer pour parcourir chaque lettre de chaque ligne d'un fichier par exemple :
  1. for ligne in fichier.readlines():
  2. [indentation] for lettre in ligne :
  3. [indentation][indentation]print(lettre)



Voilà, il y a sûrement d'autres situations où on peut l'utiliser mais celles là sont les principales .

ps:je ne sais pas quel livre tu as, mais je trouve que celui de Gérard Swinnen "apprendre à programmer avec python3" est très bien pour apprendre
  • walex a sélectionné cette solution comme la meilleure réponse
  • archipeldufond a édité ce message
  • archipeldufond a édité ce message
  • archipeldufond a édité ce message
  • Commenter cette solution |
Score
0
òh
òi
|
Il existe encore un for qui n'a pas été précisé par archipeldufond:
  1. liste = [i*i for i in range(10)]
Ce for dans la liste permet de générer une liste en bouclant sur les éléments, c'est équivalent à:
  1. liste = []
  2. for i in range(10):
  3. liste.append(i*i)


Une petite démo de boucle for:
  1. # "Python is beautiful" By CRicky [512B] _.--._.--e
  2. import tkinter, time
  3.  
  4. c = tkinter.Canvas(width=500, height=400)
  5. c.pack()
  6.  
  7. for i in list(range(10,0,-1)) * 1000:
  8. time.sleep(0.02)
  9.  
  10. r = [4000//(101-j+i) for j in range(100, 0, -1)]
  11. z = ['%02X'%min(255*a**2//40000,255) for a in r]
  12. data = [[r[j], '#00'+z[j]*(j//5%2)+'00'+z[j]*(1^j//5%2)] for j in range(len(r))]
  13. l = [c.create_oval(200-d[0], 200-d[0], 300+d[0], 200+d[0], width=0, fill=d[1]) for d in data]
  14.  
  15. c.update()
  16. for o in l: c.delete(o)
  • CRicky a édité ce message
  • Commenter cette réponse |

Ce n'est pas ce que vous cherchiez ?

Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS