Dans cette partie de cours, on va découvrir les listes imbriquées  en python .  Nous avons déjà vu comment définir et utiliser les listes simples en python. Donc, cette partie est la suite de la partie précédente ( listes simples en python) .

Introduction

 Une liste peut contenir n’importe quel objet, même une autre liste, qui à son tour peut contenir des sous-listes elles-mêmes, etc. Il s’agit de la liste imbriquée.

exemple de listes imbriquée en python
exemple de listes imbriquée en python

Accès aux éléments

  • Accès aux éléments de liste imbriqués par index positif :
L=[['ahmad','alaoui',20],['houda','amal',25],['ibtihal','alami',18]]

print(L[2])  # Prints ['ibtihal','alami',18]

print(L[2][2])  # Prints 18
  • Accès aux éléments de liste imbriqués par index négatif :
L=[['ahmad','alaoui',20],['houda','amal',25],['ibtihal','alami',18]]

print(L[-2])  # Prints ['houda','amal',25]

print(L[-2][-1])  # Prints 25

On peut utiliser toutes les méthodes déjà vu qui facilitent les traitements classiques dans les listes. Ci-dessous des exemples non exhaustifs :

L = ['a', ['b', 'c'], 'd']

L[1].append('xx')

print(L)
L = ['a', ['b', 'c'], 'd']

L[1].insert(0,'xx')

print(L)
L = ['a', ['b', 'c'], 'd']

L[1].extend([1,2,3])

print(L)
L = ['a', ['bb', 'cc'], 'd']

x = L[1].pop(1)

print(L)#résultat :

print(x)
L = ['a', ['bb', 'cc'], 'd']

del   L[1][1]

print(L)
L = ['a', ['bb', 'cc'], 'd']

L[1].remove('cc')

print(L)#résultat :

print(x)

Exercices

Exercice 1 : 

soit L= [[1, 2, 3, 4], [5, 6], [7, 8, 9]] . Proposer un programme qui permet de calculer la somme de tous les nombres contenus dans L.

Solution 1 :

liste = [[1,2,3],[4,5],[6,7,8,9]]
s = 0
for i in liste:
   for j in i :
       s +=j
print(s)

Solution 2 :

liste = [[1,2,3],[4,5],[6,7,8,9]]
s = 0
for i in range(3):
   for j in range(len(liste[i])):
       s +=liste[i][j]
print(s)

solution 3:

liste = [[1,2,3],[4,5],[6,7,8,9]]
s = 0
for i in range(3):
   s += sum(liste[i])
print(s)

Exercice 2 : 

Prédire le résultat des programmes suivants

Programme 1 :

l = 3
c = 4
L = [0] * l
print(L)
for i in range(l):
   L[i] = [0] * c
print(L)

Programme 2 :

l = 3
c = 4
M = []
for i in range(l):
   M.append([0] * c)
print(M)

Programme 3 :

l = 3
c = 4
a = [['1'] * c for i in range(l)]
print(a)

Exercice 3 

Prédire le résultat

L=[i for i in range(1,20,2)]
print(L)
M1=[j*2 for j in L]
M2=[[j*2] for j in L]
M3=[[j]*2 for j in L]
print("M1 : ",M1)
print("M2:",M2)
rint("M3:",M3)

Exercice 4 : 

Proposer un programme qui permet de remplir et afficher une matrice par l lignes et c colonnes. l et c sont saisit au clavier.

 Exercice 5 :

Une matrice est dite matrice carrée si elle a le même nombre de lignes et de colonnes. Proposer un programme qui permet de remplir une matrice carrée de taille n ( càd : l=c=n) pour avoir le résultat suivant

listes imbriquées exercice 5

Vous pouvez suivre la liste des vidéos du cours Python (Programmation ) sur notre chaine youtube :  Vidéos Python (cours) , Vidéos Python (exercices).

Aussi, notre cours bien structuré est sur le site : cours python

Découvrir plus de cours

Algorithmes, base de données, merise, SQL

cours html5

HTML5 : insérer une image

Bienvenue dans notre cours résumé sur l’html5. Nous avons vu la structure de base d’une...

poo en python

Utilisation des fichiers

Bienvenue dans notre cours ‘Programmation orientée objet en Python’. Alors, dans cette partie de cours, on...

cours html5

HTML5 : liste ol,ul et df

Bienvenue dans notre cours résumé sur l’html5. C’est déjà le deuxième article!!Nous avons vu la...

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *