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
Introduction à Python
course content

Contenu du cours

Introduction à Python

Introduction à Python

1. Commencer
2. Variables et Types
3. Instructions Conditionnelles
4. Autres Types de Données
5. Boucles
6. Fonctions

book
Ité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 le nombre de manière dynamique ? C'est là que l'itération par index devient essentielle.

L'itération par index est une technique fondamentale en Python qui vous permet d'accéder et de modifier les éléments par leurs positions au sein de 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 vente dans un magasin d'alimentation.

Regardez comment Alex démontre que l'itération sur les index peut simplifier les opérations dans notre exemple de magasin d'alimentation :

L'itération sur les index est utile lorsque vous devez accéder à la fois à l'index et à la valeur de chaque élément dans 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ù vous devez accéder ou modifier des éléments en fonction de leur position.

Par exemple, cette boucle for accède à l'index et à la valeur de chaque élément dans le 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

Application Exemple

Pour appliquer une remise à une liste de prix, nous devons modifier directement les éléments de la liste. Utiliser une boucle simple comme for cost in prices: ne nous donnerait qu'une copie de chaque élément, pas 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 originale.

Pour nous assurer de mettre à jour directement chaque élément dans la liste prices, nous utilisons range(len(prices)) pour itérer sur les indices. Cela nous 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

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 original (déterminée par la remise) de lui-même, appliquant ainsi effectivement la remise.

  • Le cost + 1 dans l'instruction d'impression ajuste l'index pour qu'il commence à 1 au lieu de 0, le rendant plus convivial pour l'utilisateur.

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

Tâche

Swipe to start coding

Dans cette tâche, vous travaillerez avec des listes représentant les quantités de stock et les expéditions pour mettre à jour les niveaux d'inventaire. Vous utiliserez l'itération par index pour mettre à jour efficacement les quantités de stock en fonction des données d'expédition reçues.

Instructions de Code

  • Vous disposez de deux listes : stock_items et shipment_received. Chaque liste imbriquée dans ces listes contient un nom de produit et sa quantité.
  • Utilisez une boucle for combinée avec les fonctions range() et len() pour itérer sur la liste stock_items par index.
  • Pour chaque produit, mettez à jour la quantité de stock en ajoutant la quantité correspondante de la liste shipment_received.

Exigences de Sortie

  • Pour chaque produit, imprimez un message au format : Stock updated for <product_name>: <updated_quantity> units.
  • Après avoir mis à jour tous les produits, imprimez les quantités de stock finales avec le message : Final stock quantities:.
  • Affichez la liste stock_items mise à jour au format : Stock Items: <stock_items>.

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 4
toggle bottom row

book
Ité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 le nombre de manière dynamique ? C'est là que l'itération par index devient essentielle.

L'itération par index est une technique fondamentale en Python qui vous permet d'accéder et de modifier les éléments par leurs positions au sein de 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 vente dans un magasin d'alimentation.

Regardez comment Alex démontre que l'itération sur les index peut simplifier les opérations dans notre exemple de magasin d'alimentation :

L'itération sur les index est utile lorsque vous devez accéder à la fois à l'index et à la valeur de chaque élément dans 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ù vous devez accéder ou modifier des éléments en fonction de leur position.

Par exemple, cette boucle for accède à l'index et à la valeur de chaque élément dans le 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

Application Exemple

Pour appliquer une remise à une liste de prix, nous devons modifier directement les éléments de la liste. Utiliser une boucle simple comme for cost in prices: ne nous donnerait qu'une copie de chaque élément, pas 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 originale.

Pour nous assurer de mettre à jour directement chaque élément dans la liste prices, nous utilisons range(len(prices)) pour itérer sur les indices. Cela nous 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

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 original (déterminée par la remise) de lui-même, appliquant ainsi effectivement la remise.

  • Le cost + 1 dans l'instruction d'impression ajuste l'index pour qu'il commence à 1 au lieu de 0, le rendant plus convivial pour l'utilisateur.

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

Tâche

Swipe to start coding

Dans cette tâche, vous travaillerez avec des listes représentant les quantités de stock et les expéditions pour mettre à jour les niveaux d'inventaire. Vous utiliserez l'itération par index pour mettre à jour efficacement les quantités de stock en fonction des données d'expédition reçues.

Instructions de Code

  • Vous disposez de deux listes : stock_items et shipment_received. Chaque liste imbriquée dans ces listes contient un nom de produit et sa quantité.
  • Utilisez une boucle for combinée avec les fonctions range() et len() pour itérer sur la liste stock_items par index.
  • Pour chaque produit, mettez à jour la quantité de stock en ajoutant la quantité correspondante de la liste shipment_received.

Exigences de Sortie

  • Pour chaque produit, imprimez un message au format : Stock updated for <product_name>: <updated_quantity> units.
  • Après avoir mis à jour tous les produits, imprimez les quantités de stock finales avec le message : Final stock quantities:.
  • Affichez la liste stock_items mise à jour au format : Stock Items: <stock_items>.

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 4
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Nous sommes désolés de vous informer que quelque chose s'est mal passé. Qu'est-il arrivé ?
some-alt