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

poo en python

Le polymorphisme

Bienvenue dans notre cours ‘Programmation orientée objet en Python’. Ce cours traite les concepts fondamentaux...

poo en python

Les concepts de base de la POO

Bienvenue dans notre cours ‘Programmation orientée objet en Python’. Ce cours traite les concepts fondamentaux...

introduction aux algorithmes

Les bases de l’algorithmique

I- Introduction L’ordinateur le plus puissant que vous connaissez n’est qu’un ensemble de matériaux ; Hardware...

Laisser un commentaire

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