QCM
Déf. en compréhension☘
Rappel
Les questions ci-dessous sont là pour vous aider à contrôler ce que vous
avez retenu.
Si vous ne répondez pas à toutes les questions sans hésitation, c'est sans
doute qu'il faut retravailler les pages précédentes.
Pour chaque question, il faut trouver la (ou les) bonne(s) réponse(s).
QCM 1☘
Dans l'interpréteur Python, on saisit les instructions :
>>> a = [1, 2, 3]
>>> a = [str(x) for x in a]
>>> a[1] + a[2]
Que renvoie cette dernière instruction ?
-
3
-
5
-
'12'
-
'23'
Réponse
-
3
-
5
-
'12'
-
'23'
La première instruction construit le tableau contenant les entiers 1
,
2
, 3
.
En ligne 2, on construit le tableau des chaînes de caractères définies à
partir des entiers de la liste précédente :
>>> str(2)
'2'
>>> a = [1, 2, 3]
>>> type(a[0])
<class 'int'>
>>> a = [str(x) for x in a]
>>> a
['1', '2', '3']
>>> type(a[0])
<class 'str'>
'2'
et '3'
. Leur concaténation est '23'
.
QCM 2☘
Que renvoie l'instruction suivante ?
>>> [a + b for a in ['1', '2', '3'] for b in ['4', '5', '6']]
-
['41', '52', '63']
-
['14', '25', '36']
-
['14', '24', '34', '15', '25', '35', '16', '26', '36']
-
['14', '15', '16', '24', '25', '26', '34', '35', '36']
Réponse
-
['41', '52', '63']
-
['14', '25', '36']
-
['14', '24', '34', '15', '25', '35', '16', '26', '36']
-
['14', '15', '16', '24', '25', '26', '34', '35', '36']
L'instruction
1 |
|
est équivalente au code suivant :
1 2 3 4 |
|
La lecture est la suivante:
- a étant fixé à la valeur
'1'
, b parcourt le tableau['4', '5', '6']
: on incorpore donc'14'
, puis'15'
puis'16'
au tableautab
. - a prend ensuite la valeur
'2'
et b parcourt le tableau['4', '5', '6']
: on incorpore donc'24'
, puis'25'
puis'26'
au tableautab
. - a prend ensuite la valeur
'3'
et b parcourt le tableau['4', '5', '6']
: on incorpore donc'34'
, puis'35'
puis'36'
au tableautab
.
QCM 3☘
Dans l'interpréteur Python, on saisit les instructions :
>>> a = [i*i for i in range(5)]
>>> a[len(a)-1]
Que renvoie cette dernière instruction ?
- Une erreur
-
0
-
16
-
25
Réponse
- Une erreur
-
0
-
16
-
25
>>> a = [i*i for i in range(5)]
>>> a
[0, 1, 4, 9, 16]
>>> a[len(a)-1]
16
QCM 3☘
Après l'affectation suivante :
1 |
|
on accède à la lettre 'b'
avec :
-
alpha[1]
-
alpha[2]
-
alpha['b']
-
alpha(1)
Réponse
-
alpha[1]
-
alpha[2]
-
alpha['b']
-
alpha(1)
>>> alpha = [x for x in 'abcdefghijklmnopqrstuvwxyz']
>>> alpha
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm',
'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
>>> alpha[1]
'b'