Contenu du cours
Introduction à Python
Introduction à Python
Fonction Range
La fonction range()
en Python est une fonction intégrée qui génère une séquence de nombres.
Elle est souvent utilisée pour itérer sur une séquence avec des boucles, en particulier lorsque vous avez besoin d'exécuter une boucle un nombre spécifique de fois.
C'est idéal pour gérer des tâches qui impliquent un schéma de répétition prévisible, comme le réapprovisionnement des étagères ou la planification des ventes dans un cadre de supermarché.
Voyons comment Alex utilise la fonction range()
pour gérer efficacement les tâches routinières dans notre scénario de supermarché :
Syntaxe et Arguments
La fonction range()
peut prendre jusqu'à trois arguments, ce qui la rend polyvalente pour divers scénarios de boucles.
Voici la syntaxe générale de la fonction range
:
python
start
: c'est le premier nombre de la séquence. Il est optionnel, et si vous ne l'incluez pas, la séquence commencera à0
.stop
: c'est le dernier nombre de la séquence, mais la séquence s'arrêtera juste avant ce nombre. Cet argument est obligatoire.step
: c'est le montant que vous ajoutez (ou soustrayez) entre chaque nombre de la séquence. Il est optionnel, et si vous ne l'incluez pas, la séquence augmentera de1
à chaque fois.
Maintenant que vous avez compris la syntaxe de la fonction range()
, explorons quelques exemples pour voir comment chaque argument — start
, stop
et step
— influence le comportement des boucles.
Un Seul Argument
Lorsque la fonction range()
est donnée un seul argument, elle le traite comme le paramètre stop
.
Dans notre exemple, elle génère une séquence de 7 éléments commençant à 0
et se terminant à 6
. La boucle itère sur ces éléments, représentant les 7 premiers jours d'ouverture du magasin.
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
Remarque
La séquence commence à
0
et se termine à6
. Cela se produit parce que Python commence souvent à compter à partir de0
, ce qui réduit le besoin d'ajuster l'indexation dans de nombreuses situations.
Deux Arguments
Lorsque deux arguments sont fournis, comme 25
(start
) et 32
(stop
), range()
génère une séquence de 25
à 31
(puisque la valeur stop
est exclue de la séquence).
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
Remarque
Avec cette méthode d'indexation, où l'élément de fin est exclu, vous pouvez facilement calculer le nombre d'éléments dans la séquence en soustrayant l'argument
start
de l'argumentstop
. Par exemple,32 - 25 = 7
, ce qui signifie qu'il y a 7 éléments dans la séquence.
Trois Arguments
En ajoutant un troisième argument à range()
, vous introduisez une valeur step
, qui définit l'incrément entre chaque nombre dans la séquence.
Dans cet exemple, range()
prend 1
(start
), 13
(stop
), et 3
(step
), produisant les nombres 1, 4, 7, 10
. Ceux-ci peuvent représenter les heures de début des quarts de travail du personnel pendant une journée de travail de 12 heures.
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
Application Exemple
Avec la fonction range()
, nous pouvons planifier des tâches pour chaque jour de la semaine afin de nous assurer que toutes les sections du magasin sont couvertes.
Cette boucle s'exécute 7 fois car range(7)
crée des nombres de 0
à 6
(un total de 7 éléments). À chaque itération, la variable day
prend une valeur de 0
à 6
, qui est ensuite utilisée pour accéder aux éléments des listes weekly_tasks
et weekdays
.
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
Swipe to start coding
Dans cette tâche, vous allez travailler avec deux listes : l'une contenant les produits en promotion pour chaque jour, et l'autre contenant les noms des jours de la semaine. Votre objectif est d'écrire une boucle qui itère sur les deux listes et affiche le jour actuel avec la promotion correspondante.
Instructions de Code
- Utilisez une boucle
for
pour itérer à travers les indices des listes en utilisant la fonctionrange()
. - Pour chaque itération, récupérez le
weekday
actuel de la listeweekdays
en utilisant l'indice. - Récupérez la promotion correspondante de la liste
daily_promotions
en utilisant le même indice. - Imprimez le jour de la semaine et la promotion dans le format spécifié.
Exigences de Sortie
- Pour chaque itération, imprimez le jour de la semaine et la promotion dans le format :
<weekday>: Promotion on <promotion>
.
Remarque
Faites attention au nombre d'éléments dans les listes.
Solution
Merci pour vos commentaires !
Fonction Range
La fonction range()
en Python est une fonction intégrée qui génère une séquence de nombres.
Elle est souvent utilisée pour itérer sur une séquence avec des boucles, en particulier lorsque vous avez besoin d'exécuter une boucle un nombre spécifique de fois.
C'est idéal pour gérer des tâches qui impliquent un schéma de répétition prévisible, comme le réapprovisionnement des étagères ou la planification des ventes dans un cadre de supermarché.
Voyons comment Alex utilise la fonction range()
pour gérer efficacement les tâches routinières dans notre scénario de supermarché :
Syntaxe et Arguments
La fonction range()
peut prendre jusqu'à trois arguments, ce qui la rend polyvalente pour divers scénarios de boucles.
Voici la syntaxe générale de la fonction range
:
python
start
: c'est le premier nombre de la séquence. Il est optionnel, et si vous ne l'incluez pas, la séquence commencera à0
.stop
: c'est le dernier nombre de la séquence, mais la séquence s'arrêtera juste avant ce nombre. Cet argument est obligatoire.step
: c'est le montant que vous ajoutez (ou soustrayez) entre chaque nombre de la séquence. Il est optionnel, et si vous ne l'incluez pas, la séquence augmentera de1
à chaque fois.
Maintenant que vous avez compris la syntaxe de la fonction range()
, explorons quelques exemples pour voir comment chaque argument — start
, stop
et step
— influence le comportement des boucles.
Un Seul Argument
Lorsque la fonction range()
est donnée un seul argument, elle le traite comme le paramètre stop
.
Dans notre exemple, elle génère une séquence de 7 éléments commençant à 0
et se terminant à 6
. La boucle itère sur ces éléments, représentant les 7 premiers jours d'ouverture du magasin.
# Announce store opening every day for 7 days for day in range(7): print(f"Good morning! The store is now open on day {day}.")
Remarque
La séquence commence à
0
et se termine à6
. Cela se produit parce que Python commence souvent à compter à partir de0
, ce qui réduit le besoin d'ajuster l'indexation dans de nombreuses situations.
Deux Arguments
Lorsque deux arguments sont fournis, comme 25
(start
) et 32
(stop
), range()
génère une séquence de 25
à 31
(puisque la valeur stop
est exclue de la séquence).
# Planning seasonal sale days in the last week of December for day in range(25, 32): print(f"Seasonal sale on December {day}.")
Remarque
Avec cette méthode d'indexation, où l'élément de fin est exclu, vous pouvez facilement calculer le nombre d'éléments dans la séquence en soustrayant l'argument
start
de l'argumentstop
. Par exemple,32 - 25 = 7
, ce qui signifie qu'il y a 7 éléments dans la séquence.
Trois Arguments
En ajoutant un troisième argument à range()
, vous introduisez une valeur step
, qui définit l'incrément entre chaque nombre dans la séquence.
Dans cet exemple, range()
prend 1
(start
), 13
(stop
), et 3
(step
), produisant les nombres 1, 4, 7, 10
. Ceux-ci peuvent représenter les heures de début des quarts de travail du personnel pendant une journée de travail de 12 heures.
# Schedule staff shifts every three hours throughout a 12-hour day for hour in range(1, 13, 3): print(f"Staff shift starts at hour {hour}.")
Application Exemple
Avec la fonction range()
, nous pouvons planifier des tâches pour chaque jour de la semaine afin de nous assurer que toutes les sections du magasin sont couvertes.
Cette boucle s'exécute 7 fois car range(7)
crée des nombres de 0
à 6
(un total de 7 éléments). À chaque itération, la variable day
prend une valeur de 0
à 6
, qui est ensuite utilisée pour accéder aux éléments des listes weekly_tasks
et weekdays
.
# List of daily tasks for a week weekly_tasks = [ "Restock Fruits", "Clean Dairy Section", "Review Meat Inventory", "Restock Vegetables", "Check Bakery Expiry Dates", "Organize Front Displays", "Prepare Weekly Sales Report" ] # List of weekdays corresponding to each task weekdays = [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ] # Loop through each day using the range function for day in range(7): task = weekly_tasks[day] # Access the task corresponding to the current day weekday = weekdays[day] # Access the corresponding weekday print(f"{weekday} Task: {task}")
Swipe to start coding
Dans cette tâche, vous allez travailler avec deux listes : l'une contenant les produits en promotion pour chaque jour, et l'autre contenant les noms des jours de la semaine. Votre objectif est d'écrire une boucle qui itère sur les deux listes et affiche le jour actuel avec la promotion correspondante.
Instructions de Code
- Utilisez une boucle
for
pour itérer à travers les indices des listes en utilisant la fonctionrange()
. - Pour chaque itération, récupérez le
weekday
actuel de la listeweekdays
en utilisant l'indice. - Récupérez la promotion correspondante de la liste
daily_promotions
en utilisant le même indice. - Imprimez le jour de la semaine et la promotion dans le format spécifié.
Exigences de Sortie
- Pour chaque itération, imprimez le jour de la semaine et la promotion dans le format :
<weekday>: Promotion on <promotion>
.
Remarque
Faites attention au nombre d'éléments dans les listes.
Solution
Merci pour vos commentaires !