Questions pratiques pour testez vos connaissances sur la programmation Python à savoir des structures conditionnelles, des opérations logiques, des boucles, des fonctions, etc. Testez votre connaissance et travaillez sur les questions que vous trompez le plus souvent.
1. Supposons que list1 = [1, 2, 3, 1, 4, 5, 6, 1], alors list1.count(1) égale à?
A 1
B 2
C 3
D 4
C
La méthode count() en Python renvoie le nombre d’occurrences d’un élément spécifique dans une liste. La méthode list1.count(1) cherche combien de fois l’élément 1 apparaît dans la liste list1. En parcourant list1, on observe que l’élément 1 apparaît quatre fois.
2. Quelle est la sortie du code suivant?
>>>t=(1,2,4,3)
>>>t[1:3]
A (2, 4, 3)
B (2, 4)
C (1, 2, 4)
D (1, 2)
B
Le tuple t est défini comme t = (1, 2, 4, 3). L’expression t[1:3] signifie une tranche du tuple à partir de l’indice 1 jusqu’à l’indice 3 (sans inclure l’indice 3). Ainsi, t[1:3] renvoie (2, 4).
La méthode reverse() en Python modifie la liste en place en inversant l’ordre des éléments. Cela signifie que la liste originale sera modifiée et que ses éléments seront dans l’ordre inverse.
4. Quelle est la sortie du code suivant?
>>>tuple1 = (1, 2, 4, 3, 8, 9)
>>>[tuple1[i] for i in range(0, len(tuple1), 2)]
A (1, 4, 8)
B [1, 4, 8]
C (2, 3, 9)
D [2, 3, 9]
B
Le code présenté utilise une compréhension de liste pour créer une nouvelle liste en sélectionnant des éléments du tuple tuple1 à des indices spécifiques. Le tuple original, tuple1, contient les éléments (1, 2, 4, 3, 8, 9). L’expression [tuple1[i] for i in range(0, len(tuple1), 2)] itère à travers les indices du tuple en commençant par l’indice 0, puis en prenant chaque deuxième élément grâce au pas de 2. Cela signifie que la boucle va parcourir les indices 0, 2, et 4, et donc sélectionner les éléments correspondants à ces indices dans tuple1, soit les valeurs 1, 4, et 8. Ces valeurs sont ensuite collectées dans une nouvelle liste, qui est finalement affichée comme [1, 4, 8]. Par conséquent, la sortie correcte de ce code est [1, 4, 8], ce qui correspond à la réponse B).
5. Quelle est la sortie du code suivant?
def f(x, y, z): return x + y + z
f(3, 20, 100)
A 320100
B 120
C 123
D N’affiche rien
C
Dans le code fourni, une fonction f(x, y, z) est définie, qui prend trois paramètres : x, y et z. La fonction retourne la somme de ces trois paramètres : x + y + z. Lorsqu’on appelle la fonction avec les arguments 3, 20 et 100 (comme dans f(3, 20, 100)), la fonction effectue le calcul 3 + 20 + 100, ce qui donne la valeur 123.
6. Lequel des énoncés suivants est vrai?
A Un ensemble est une collection non ordonnée d’éléments.
B Les éléments d’un ensemble sont uniques.
C Vous pouvez changer les éléments d’un ensemble/set contrairement d’un tuple.
D Tout les réponses sont vrais
D
Tous les réponses sont vrais. Explication:
A) Un ensemble est une collection non ordonnée d’éléments: C’est vrai. Les ensembles (ou set en Python) sont des collections d’éléments qui ne sont pas ordonnés. Cela signifie que l’ordre des éléments dans un ensemble n’est pas garanti.
B) Les éléments d’un ensemble sont uniques: C’est également vrai. Un ensemble ne peut contenir que des éléments uniques. Si vous tentez d’ajouter un élément déjà présent, l’ensemble ne le dupliquera pas.
C) Vous pouvez changer les éléments d’un ensemble/set contrairement à un tuple: C’est vrai aussi. Un ensemble est mutable, ce qui signifie que vous pouvez ajouter ou supprimer des éléments d’un ensemble. En revanche, un tuple est immuable, donc vous ne pouvez pas modifier directement les éléments d’un tuple après sa création.
7. Comment on peut changer la valeur 3 par 2 dans le code ci-dessous?
x = {‘un’: 1, ‘deux’: 3}
Ax['deux'] = 2
Bx['deux'] = '2'
Cx[2] = 'deux'
Dx[1] = 'deux'
A
Dans le code donné, nous avons un dictionnaire x = {'un': 1, 'deux': 3} où les clés sont des chaînes de caractères, et les valeurs sont des nombres entiers.
Si nous voulons changer la valeur associée à la clé ‘deux’ de 3 à 2, il suffit d’affecter la nouvelle valeur à cette clé dans le dictionnaire. Cela se fait en utilisant la syntaxe x['deux'] = 2.
8. Quelle est la sortie du code suivant?
>>>t = (1, 2)
>>>2 * t
A [1, 2, 1, 2]
B [1, 1, 2, 2]
C (1, 1, 2, 2)
D (1, 2, 1, 2)
D
Le code crée un tuple t qui contient les éléments (1, 2). Lorsqu’on utilise l’opérateur de multiplication * avec un tuple, il répète les éléments du tuple un certain nombre de fois. Ici, 2 * t répète le tuple (1, 2) deux fois. Donc, la sortie est le tuple (1, 2, 1, 2).
9. Quelle est la sortie du code suivant?
def f(x):
x = x + [5]
x = [1, 2, 3, 4, 5]
f(x)
print(len(x))
A 0
B 4
C 5
D Une exception est levée
C
La fonction f(x) prend une liste x en paramètre. À l’intérieur de la fonction, l’instruction x = x + [5] crée une nouvelle liste qui est le résultat de l’addition de [5] à la fin de la liste x (cela ne modifie pas la liste originale x en dehors de la fonction, mais crée une nouvelle liste à l’intérieur de la fonction).
Cependant, la liste originale x en dehors de la fonction n’est pas modifiée par cette opération. En effet, l’assignation x = x + [5] crée une nouvelle liste dans le scope local de la fonction et n’affecte pas la liste x dans le scope global. Par conséquent, la liste x originale reste inchangée.
Lorsque vous appelez print(len(x)), la longueur de la liste originale x est affichée. La liste initiale était [1, 2, 3, 4, 5] et sa longueur est 5.
Les tuples sont des objets itérables en Python et peuvent être comparés de manière lexicographique. Cela signifie que Python compare les éléments des tuples un par un, de gauche à droite, jusqu’à ce qu’il trouve une différence.