Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Itération sur les Index | Boucles
Practice
Projects
Quizzes & Challenges
Quiz
Challenges
/
Introduction à Python

bookItération sur les Index

Dans la tâche précédente, vous avez fourni un nombre spécifique d’éléments à la fonction range(). Mais que faire si vous devez déterminer ce nombre de manière dynamique ? C’est là que l’itération sur les index devient essentielle.

L’itération sur les index est une technique fondamentale en Python qui permet d’accéder et de modifier les éléments selon leur position dans des structures de données comme les listes ou les tableaux. Elle est particulièrement utile pour les tâches nécessitant un contrôle précis sur chaque élément, comme la mise à jour des niveaux de stock ou la gestion des données de ventes dans une épicerie.

Regardez comment Alex démontre que l’itération sur les index peut simplifier les opérations dans notre exemple d’épicerie :

L’itération sur les index est utile lorsque vous devez accéder à la fois à l’index et à la valeur de chaque élément d’une liste. Lorsque nous utilisons range() avec len(), nous combinons deux fonctions pour générer une séquence de nombres correspondant aux indices des éléments de la liste. Cette méthode est particulièrement utile dans les boucles où il est nécessaire d’accéder ou de modifier les éléments en fonction de leur position.

Par exemple, cette boucle for accède à l’index et à la valeur de chaque élément dans la grocery_list :

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Exemple d'application

Pour appliquer une remise à une liste de prix, il est nécessaire de modifier directement les éléments de la liste. Utiliser une boucle simple comme for cost in prices: ne fournit qu'une copie de chaque élément, et non une référence à l'élément réel dans la liste. Les modifications effectuées de cette manière n'affecteraient pas la liste d'origine.

Pour garantir la mise à jour directe de chaque élément dans la liste prices, on utilise range(len(prices)) pour itérer sur les indices. Cela permet d'appliquer un facteur de remise à chaque élément :

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy
Note
Remarque
  • La formule prices[cost] -= prices[cost] * discount_factor est équivalente à prices[cost] = prices[cost] - prices[cost] * discount_factor. Cela soustrait une partie du prix d'origine (déterminée par la remise) à lui-même, appliquant ainsi effectivement la remise ;
  • Le cost + 1 dans l'instruction print ajuste l'indice afin qu'il commence à 1 au lieu de 0, ce qui est plus convivial pour l'utilisateur.

Cette méthode garantit que la liste d'origine prices est mise à jour directement avec les nouveaux prix réduits, reflétant immédiatement les modifications dans tout le programme où la liste prices est utilisée.

Tâche

Swipe to start coding

Remise selon la position

Mettre à jour la liste prices en appliquant différents pourcentages de remise à chaque article, en fonction de sa position dans la liste. Utiliser une itération par index pour s'assurer de modifier directement la liste originale prices.

  • Utiliser une boucle for avec range() et len() pour parcourir les indices de prices ;

  • Pour chaque indice, appliquer les remises suivantes et mettre à jour la liste :

    • Index 0 : remise de 10 % (multiplier par 0.9) ;
    • Index 1 : remise de 20 % (multiplier par 0.8) ;
    • Index 2 : remise de 15 % (multiplier par 0.85) ;
    • Index 3 : remise de 5 % (multiplier par 0.95) ;
  • Après la mise à jour de chaque prix, afficher une ligne : Updated price for item {index}: ${updated_price:.2f} ;

  • Utiliser .2f dans l'instruction d'affichage pour formater les prix avec 2 décimales (par exemple, 5 devient 5.00).

  • Il est obligatoire de modifier directement la liste prices, et non simplement d'afficher les valeurs remisées.

Solution

Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 6
single

single

Demandez à l'IA

expand

Demandez à l'IA

ChatGPT

Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion

close

bookItération sur les Index

Glissez pour afficher le menu

Dans la tâche précédente, vous avez fourni un nombre spécifique d’éléments à la fonction range(). Mais que faire si vous devez déterminer ce nombre de manière dynamique ? C’est là que l’itération sur les index devient essentielle.

L’itération sur les index est une technique fondamentale en Python qui permet d’accéder et de modifier les éléments selon leur position dans des structures de données comme les listes ou les tableaux. Elle est particulièrement utile pour les tâches nécessitant un contrôle précis sur chaque élément, comme la mise à jour des niveaux de stock ou la gestion des données de ventes dans une épicerie.

Regardez comment Alex démontre que l’itération sur les index peut simplifier les opérations dans notre exemple d’épicerie :

L’itération sur les index est utile lorsque vous devez accéder à la fois à l’index et à la valeur de chaque élément d’une liste. Lorsque nous utilisons range() avec len(), nous combinons deux fonctions pour générer une séquence de nombres correspondant aux indices des éléments de la liste. Cette méthode est particulièrement utile dans les boucles où il est nécessaire d’accéder ou de modifier les éléments en fonction de leur position.

Par exemple, cette boucle for accède à l’index et à la valeur de chaque élément dans la grocery_list :

12345678
# List of grocery items grocery_list = ["Apples", "Bananas", "Carrots", "Cucumbers"] # Initialize a for loop to iterate over indexes for item in range(len(grocery_list)): print("Index:", item) print("Item:", grocery_list[item]) print("----") # Printing a divider line for clarity
copy

Exemple d'application

Pour appliquer une remise à une liste de prix, il est nécessaire de modifier directement les éléments de la liste. Utiliser une boucle simple comme for cost in prices: ne fournit qu'une copie de chaque élément, et non une référence à l'élément réel dans la liste. Les modifications effectuées de cette manière n'affecteraient pas la liste d'origine.

Pour garantir la mise à jour directe de chaque élément dans la liste prices, on utilise range(len(prices)) pour itérer sur les indices. Cela permet d'appliquer un facteur de remise à chaque élément :

12345678910111213
# List of original prices of grocery items prices = [1.50, 2.00, 0.75, 3.25] # Discount factor (10% off each item) discount_factor = 0.10 # Iterate over the list of prices using range(len()) for cost in range(len(prices)): # Apply the discount by reducing the price prices[cost] -= prices[cost] * discount_factor print(f"New price of item {cost + 1}: ${prices[cost]}") print("Updated prices:", prices)
copy
Note
Remarque
  • La formule prices[cost] -= prices[cost] * discount_factor est équivalente à prices[cost] = prices[cost] - prices[cost] * discount_factor. Cela soustrait une partie du prix d'origine (déterminée par la remise) à lui-même, appliquant ainsi effectivement la remise ;
  • Le cost + 1 dans l'instruction print ajuste l'indice afin qu'il commence à 1 au lieu de 0, ce qui est plus convivial pour l'utilisateur.

Cette méthode garantit que la liste d'origine prices est mise à jour directement avec les nouveaux prix réduits, reflétant immédiatement les modifications dans tout le programme où la liste prices est utilisée.

Tâche

Swipe to start coding

Remise selon la position

Mettre à jour la liste prices en appliquant différents pourcentages de remise à chaque article, en fonction de sa position dans la liste. Utiliser une itération par index pour s'assurer de modifier directement la liste originale prices.

  • Utiliser une boucle for avec range() et len() pour parcourir les indices de prices ;

  • Pour chaque indice, appliquer les remises suivantes et mettre à jour la liste :

    • Index 0 : remise de 10 % (multiplier par 0.9) ;
    • Index 1 : remise de 20 % (multiplier par 0.8) ;
    • Index 2 : remise de 15 % (multiplier par 0.85) ;
    • Index 3 : remise de 5 % (multiplier par 0.95) ;
  • Après la mise à jour de chaque prix, afficher une ligne : Updated price for item {index}: ${updated_price:.2f} ;

  • Utiliser .2f dans l'instruction d'affichage pour formater les prix avec 2 décimales (par exemple, 5 devient 5.00).

  • Il est obligatoire de modifier directement la liste prices, et non simplement d'afficher les valeurs remisées.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 5. Chapitre 6
single

single

some-alt