DS session principale – S1 – 2023/2024
Matière : Structures de données Enseignant :
Filière :ING INFO 1 Mariem Gzara
avancées avec Python
Nbr de Documents autorisés :
Date : 9/11/2023 Coefficient :
Crédits : Non
Durée de l’examen : Régime d’évaluation : Mixte /
CC Nombre de pages : 03
1h00
EX + DS + OR
Question 1: Parmi les choix suivants, lequel est utilisé pour définir un block de code
dans le langage Python ?
a) Indentation
b) Key
c) Accolades
d) Tous
Question 2: Je ne suis pas un type de données de base en python.
a) Tuples
b) Listes
c) Class
d) Dictionnaire
Question 3: Quelle est la sortie du code ci-dessous.
a) [1, 4]
b) [1, 3, 4]
c) [4, 3]
d) [1, 3]
Question 4: Quelle est la sortie du code ci-dessous.
a) Error
b) True
c) False
d) No output
Question 5: Quelle est la différence entre del, remove(), pop() et clear() ? vous pouvez
comparer selon les critères suivants : type, paramètre, valeur retournée, nombre de
valeurs supprimées dans un appel, retour quand tenter de supprimer ce qui n’existe
pas dans la liste.
Question 6: Comment expliquer les valeurs retournées par la fonction id dans le code
suivant :
1
Question 7 : Comment expliquer les valeurs retournées par la fonction id dans le
code suivant :
Question 8 :
1) Quelle est l’objectif de la définition de la fonction my_hash?
2) Que retourne my_hash(‘amine’)
3) Que retourne my_hash(‘anime’)
4) En déduire un inconvénient de la fonction my_hash() ? justifier.
5) Proposer une solution au problème cité dans 4.
6) Pourquoi la fonction my_hash retourne-t-elle h%(2**32) à la place de h.
7) Quel inconvénient de la fonction my_hash pouvez-vous déduire à partir des 2
constats suivants : 2^8=256 et ( 2^8)^4=2^32 et de ce code :
8)Proposer une solution.
2
Question 9 : Expliquer le problème avec le code suivant puis proposer une
solution.
Question 10 : y-a-t-il un problème avec le code suivant ? Si oui, proposer une
solution.
BON TRAVAIL