Indice, valeur, longueur
On considère les listes A = [1, 5, 2, 4]
et B = [5, 9, 6, 1, 4, 8]
.
- Donner les longueurs respectives de ces listes.
- Rappeler comment obtenir ces longueurs en Python.
- Donner les valeurs de
A[0]
, de A[2]
puis
de A[4]
.
- Quel est l'indice de l'élément de
B
ayant pour valeur
1
?
- Questions 1°/ et 2°/
- Question 3°/
- Question 4°/
La liste A
contient 4 éléments : sa longueur est 4.
On l'obtient en Python grâce à l'instruction len(A)
.
La liste B
contient 6 éléments : sa longueur est 6.
On l'obtient en Python grâce à l'instruction len(B)
.
A[0]
vaut 1, A[2]
vaut 2 et A[4]
n'est pas
défini car la liste A
contient seulement 4 éléments.
En Python, demander la valeur de A[4]
renvoie une erreur :
>>> A = [1, 5, 2, 4]
>>> A[4]
IndexError: list index out of range
1 est le quatrième élément de la liste B
donc son indice est 3.
Concaténer, ajouter, supprimer
Soient les listes : A = [3, 2, 5]
et
B = [5, 1, 8]
.
- On saisit l'instruction
A = A+B
.
Anticiper le contenu de la liste A
après exécution de cette
instruction :
>>> A = [3, 2, 5]
>>> B = [5, 1, 8]
>>> A = A+B
- On saisit ensuite l'instruction
A.append(1)
.
Anticiper le contenu de la liste A
après exécution de cette
instruction :
>>> A = [3, 2, 5]
>>> B = [5, 1, 8]
>>> A = A+B
>>> A.append(1)
- Puis on saisit l'instruction
A.remove(1)
.
Anticiper le contenu de la liste A
après exécution de cette
instruction :
>>> A = [3, 2, 5]
>>> B = [5, 1, 8]
>>> A = A+B
>>> A.append(1)
>>> A.remove(1)
- Enfin on saisit l'instruction
A.pop(1)
.
Anticiper le contenu de la liste A
après exécution de cette
instruction :
>>> A = [3, 2, 5]
>>> B = [5, 1, 8]
>>> A = A+B
>>> A.append(1)
>>> A.remove(1)
>>> A.pop(1)
- Question 1°/
- Question 2°/
- Question 3°/
- Question 4°/
A
contient la concaténation des listes [3, 2, 5]
et
[5, 1, 8]
donc le contenu de A
est
[3, 2, 5, 5, 1, 8]
.
On prolonge A
en ajoutant 1 en queue donc le contenu de
A
devient [3, 2, 5, 5, 1, 8, 1]
.
On enlève la première occurence de 1 dans A
donc le contenu de
A
devient [3, 2, 5, 5, 8, 1]
.
On enlève l'élément de A
ayant pour indice 1 donc le contenu de
A
devient [3, 5, 5, 8, 1]
.
Parcourir les éléments d'une liste
On considère le programme ci-dessous, écrit en Python :
L = [7, 5, 2]
M = []
for elt in L:
M.append(elt-2)
Donner le contenu de la liste M
après l'exécution
de ce programme.
On place successivement dans M
chaque élément de L
auquel on soustrait 2. La liste M
est alors [5, 3, 0]
.
Parcourir les indices d'une liste
On considère le programme ci-dessous, écrit en Python :
L = [7, 5, 2]
M = []
for i in range(len(L)):
M.append(i*L[i])
Donner le contenu de la liste M
après l'exécution
de ce programme.
On place successivement dans M
chaque élément de L
multiplié par son indice. La liste M
est alors [0, 5, 4]
.
Parcourir les indices d'une liste (bis)
On considère le programme ci-dessous, écrit en Python :
L = [5, 3, 7, 8, 4]
dernier = len(L)-1
M = []
for i in range(len(L)):
M.append(L[dernier-i])
Donner le contenu de la liste M
après l'exécution
de ce programme.
On place successivement dans M
, à l'indice i
,
chaque élément de L
d'indice len(L)-1-i
.
La liste M
est alors [4, 8, 7, 3, 5]
.
Parcours de liste et fonction
On considère la fonction f()
ci-dessous, écrite en Python :
def f(L):
M = []
for i in range(1, len(L)):
M.append(L[i]-L[i-1])
return M
Quelle liste est renvoyée par l'appel f([5, 3, 7, 8, 4] )
?
On parcourt les élément de L
à partir de l'élément d'indice 1 puis
on place successivement dans M
, à l'indice i
,
la différence entre L[i]
et son précédent L[i-1]
.
La liste M
est alors [-2, 4, 1, -4]
.