2. Exemple 1
• Quelle est la sortie du code suivant ?
Deco = {'foo': 1, 'bar': 2, 'baz': 3}
if 'bar' in deco :
print(1)
print(2)
if 'a' in 'qux':
print(3)
print(4)
Sortie 1 2 4
4. Les conditions
• Python nous fournit les structures conditionnelles suivantes :
• La condition if (“si”) ;
• La condition if…else (“si…sinon”) ;
• La condition if…elif…else (“si…sinon si… sinon”) .
5. IF
• Exercice 1 : Écrivez un programme qui demande à l'utilisateur
de saisir un nombre et affiche "Positif" si le nombre est
supérieur à zéro, "Nul" s'il est égal à zéro, et "Négatif" s'il est
inférieur à zéro.
• Exercice 2 : Écrivez un programme qui demande à l'utilisateur
de saisir trois nombres et affiche le plus grand des trois.
• Exercice 3 : Écrivez un programme qui demande à l'utilisateur
de saisir une année et vérifie si elle est bissextile. Une année
est bissextile si elle est divisible par 4, sauf si elle est divisible
par 100. Toutefois, les années divisibles par 400 sont
bissextiles. Affichez "Bissextile" ou "Non bissextile" en
conséquence.
6. nombre = input("Saisissez un nombre : ")
if nombre > 0:
print("Positif")
elif nombre == 0:
print("Nul")
else:
print("Négatif")
7. nombre1 = float(input("Saisissez le premier nombre : "))
nombre2 = float(input("Saisissez le deuxième nombre : "))
nombre3 = float(input("Saisissez le troisième nombre : "))
plus_grand = nombre1
if nombre2 > plus_grand:
plus_grand = nombre2
if nombre3 > plus_grand:
plus_grand = nombre3
print("Le plus grand nombre est :", plus_grand)
8. Reste de la division
A=5
B=2
C=A/B
A=int (input(‘’Donner un nombre’’) 8
B=int (input(‘’Donner un nombre’’) 3
C=A/B
C=2
D=A%B =2
10. Nb=int(input(‘’donner le nombre de valeur’’))
j=0
i=0
While j<Nb:
a[j]= int(input(‘’donner le nombre nombe’’))
j=j+1
While i<Nb:
print(a[i])
i=i+1
Execution
Nb=4 , j=3
a 9 1 3 5
16. La boucle for via une valeur itérative entière
• Si l’on veut vraiment boucler via une valeur itérative entière en Python pour revenir à
une boucle for plus classique en termes de programmation, on va en réalité devoir
contourner le problème. Vous allez itérer au travers d’une liste qui contiendra les
différentes valeurs de votre entier itératif. Pour cela, vous utiliserez la fonction
range(début, fin, pas), qui va générer une liste de nombres selon trois paramètres :
• début : le premier nombre de la séquence;
• fin : correspond au dernier nombre de la séquence non inclus. La fonction va générer
des nombres de début à fin- 1;
• pas : le pas entre chaque nombre généré.
• Range ()
17. for i in range(0, 5, 1):
print(i) # -> affiche de 0 à 4 par pas de 1 (fin - 1)
for i in range(0, 5):
print(i) # -> affiche de 0 à 4 également (le pas par défaut est 1)
for i in range(5):
print(i) # -> affiche de 0 à 4 également (le début par défaut est 0)
for i in range(0, 5, 2):
print(i) # -> affiche 0, 2 puis 4
18. La boucle conditionnelle est la
boucle while en Python.
• "While" en anglais signifie "tant que", et comme vous pouvez le
deviner par le nom, la boucle va tourner tant qu’une condition
est réalisée. C’est une sorte de combinaison entre une boucle
for et une structure if. Le nombre de répétitions n’est pas
défini à l’avance, mais via une condition à réaliser, comme avec
un if. On appelle cela une boucle conditionnelle.
• Passez certaines instructions au sein de votre boucle :
continue
• Vous pouvez aussi décider d’interrompre la boucle, lorsque par
exemple on cherche un élément particulier dans une liste. Pour cela,
vous utiliserez le mot clé break
19. La clause else dans une boucle
• La clause else dans un boucle permet de définir un bloc d’instructions qui
sera exécuté à la fin seulement si la boucle s’est déroulée complétement
sans être interrompue par un break.
for n in range(2, 8):
for x in range(2, n):
if n % x == 0:
print(n, "egale", x, "*", n/x)
break
else:
print(n, "est un nombre premier")
21. • Écrivez un programme qui génère les n premiers nombres
premiers, où n est saisi par l'utilisateur.
• Écrivez un programme qui génère les termes de la suite de Collatz
pour un nombre donné. La suite de Collatz est définie comme suit :
pour un nombre n, si n est pair, divisez-le par 2 ; sinon, multipliez-le
par 3 et ajoutez 1. Le programme doit afficher la suite jusqu'à ce que
le nombre atteigne 1
22. n = int(input("Saisissez la valeur de n : "))
nombres_premiers = []
nombre = 2
while len(nombres_premiers) < n:
est_premier = True
for i in range(2, int(nombre**0.5) + 1):
if nombre % i == 0:
est_premier = False
break
if est_premier:
nombres_premiers.append(nombre)
nombre += 1
print("Les", n, "premiers nombres premiers sont :", nombres_premiers)
23. nombre = int(input("Saisissez un nombre : "))
while nombre != 1:
print(nombre, end=" ")
if nombre % 2 == 0:
nombre = nombre // 2 # Division entière par 2 (nombre pair)
else:
nombre = nombre * 3 + 1 # Multiplication par 3 et ajout de 1 (nombre
impair)
print(nombre) # Affiche le dernier terme de la suite (1)
24. Exemple de boucle sur dictionnaire
etudiants = {
'Alice': 18,
'Bob': 20,
'Charlie': 16,
'Dave': 19,
'Eve': 17
}
# Parcourir le dictionnaire et afficher chaque clé et valeur
for nom, age in etudiants.items():
print(nom, "a", age, "ans")
25. • Exercice : Calcul de la moyenne des valeurs d'un dictionnaire
le dictionnaire (clé:valeur) : 1:15, 2:25, 3:40, 4:45, 5:60
26. dictionnaire = input("Saisissez le dictionnaire (clé:valeur) : ")
# Conversion de la chaîne de caractères en dictionnaire
dictionnaire = dict(item.split(":") for item in dictionnaire.split(", "))
# Calcul de la moyenne des valeurs du dictionnaire
somme = 0
nombre_valeurs = len(dictionnaire)
for valeur in dictionnaire.values():
somme += int(valeur)
moyenne = somme / nombre_valeurs
print("La moyenne des valeurs est :", moyenne)
28. • Quelle affirmation parmi les 4 suivantes est vraie, vis-à-vis des
listes en Python ?
-Tous les éléments d'une liste doivent être du même type.
-Une liste peut contenir tous types d'objets à l'exception d'une autre liste.
-Ces deux listes sont équivalentes : ['a', 'b', 'c'] et ['c', 'a', 'b'].
-Une liste n'a pas de limite conceptuelle !
29. • Quelle affirmation parmi les suivantes est fausse
concernant les collections ?
• Un tuple est un objet ordonné.
• Une liste peut être modifiée.
• Un dictionnaire n'est pas mutable.
• Un tuple est défini avec des parenthèses.
30. Comment peut-on interrompre une boucle prématurément ?
-Via le mot clé continue
-Via l'opérateur :
-Via le mot clé stop
-Via le mot clé break
31. • Les codes suivants concernent différentes actions possibles
avec des listes. Sélectionnez les blocs contenant des actions
correctes parmi ceux ci-dessous :
• Colors.insert(2,’RED’);
32. Rappel
• une liste est un tableau ordonné, modifiable, où chaque
élément est associé à un indice ;
• un dictionnaire est un tableau non ordonné, modifiable, où
chaque élément est associé à une clé ;
• un tuple est un tableau ordonné, non mutable, où chaque
élément est associé à un indice ;
• Un dictionnaire est donc bel et bien modifiable : il est donc
mutable.