Dans cette partie de cours, on va découvrir les l’utilisation des tableaux en python ( Python : Les tableaux ). 

Introduction

En programmation, un tableau est une collection d’éléments du même type. Les tableaux sont populaires dans la plupart des langages de programmation tels que Java, C/C++, JavaScript, etc. Cependant, Python n’a pas de type de données spécifique pour représenter les tableaux. Les éléments suivants peuvent être utilisés pour représenter des tableaux en Python:

– En utilisant des listes

– Via le module de array

– Avec le module NumPy

Dans la suite du cours, nous utilisons le module array.

Remarque : Différence entre Liste et Tableau en Python

Nous pouvons traiter les listes comme des tableaux. Cependant, le type d’éléments stockés est complètement différent.

liste = [“Python”, 11, 15,2.10]

Création d'un tableau en python

Nous devons importer le module « array » pour créer des tableaux.

Exemple 1 : 

import array as arr

array1 = arr.array('i')

array1.append(1)

array1.append(2)

print(array1)

Sortie :  array(‘i’, [1, 2])

Exemple 2 :

import array as arr
tableau = arr.array('d', [1.0, 1.1, 1.2, 1.3])
print(tableau)

Sortie:  array(‘d’, [1.0, 1.1, 1.2, 1.3])

Ici, nous avons créé un tableau de type float. La lettre ‘d’ est un code de type. Cela détermine le type du tableau lors de la création.

Les codes de type couramment utilisés sont listés comme suit :

Code

Type

B

signed char

h

signed short

l

signed long

i

Int

f

Float

D

Double

Accéder aux éléments d’un tableau

Vous accédez aux éléments du tableau en vous référant au numéro d’index. L’exemple suivant affiche le  troisième élément du tableau:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[2])

Sortie: 3

Exercice : Proposer un programme en python qui permet de remplir un tableau avec 10 entiers saisis par l’utilisateur et l’afficher par la suite.

 Remarque 1 : Indexation négative

L’indexation négative signifie à partir de la fin, -1 se réfère au dernier élément, -2 se réfère à l’avant-dernier élément, etc. L’exemple suivant affiche le dernier élément du tableau:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[-1])

Sortie  : 6

Exercice : Affiche un tableau de la fin au premier élément

 Remarque 2 : Plage d’index

On peut spécifier une plage d’index en spécifiant par où commencer et où terminer la plage. Lors de la spécification d’une plage, la valeur de retour sera un nouveau tableau avec les éléments spécifiés. L’exemple suivant renvoie le troisième et quatrième élément:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[2:4])

Sortie:  array(‘i’, [3, 4])

La recherche commencera à l’index 2 (inclus) et se terminera à l’index 4 (non inclus).

– En ignorant la valeur de départ, la plage commencera au premier élément. L’exemple suivant renvoie les éléments du début jusqu’à le troisième élément:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[:3])

Sortie: array(‘i’, [1, 2, 3])

– En ignorant la valeur de fin, la plage ira à la fin du tableau. L’exemple suivant renvoie les éléments de l’index 2(troisième élément) jusqu’à la fin:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[2:])

 Sortie: array(‘i’, [3, 4, 5, 6])

 – Spécifiez des index négatifs si vous souhaitez commencer la recherche à la fin du tableau. L’exemple suivant renvoie les éléments de l’index -3 (inclus) à l’index -1 (exclus):

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(tab[-3:-1])

 Sortie: array(‘i’, [4, 5])

Exercice : prédire le résultat du programme :

from array import *
T = array('i', [10, 14, 8, 34, 23, 67, 47, 22])
print(T[2:6])  # 8  34  23  67
print(T[:-3])  # 10 14  8  34 23
print(T[3:])   #34  23  67  47  22
print(T[:])  # 10  14  8  34   23   67  47  22

Modifier la valeur d’un élément

Pour modifier la valeur d’un élément spécifique, referez-vous au numéro d’index. L’exemple suivant change le deuxième élément:

import array as arr

tab = arr.array('i', [1, 2, 3, 4, 5, 6])

tab[1] = 100

print(tab)

 Sortie:  array(‘i’, [1, 100, 3, 4, 5, 6])

Parcourir un tableau en Python

Vous pouvez parcourir les éléments du tableau en utilisant la boucle for. L’exemple suivant affiche tous les éléments du tableau, un par un:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
for i in tab:
print(i, end="\t")

Sortie : 1  2  3  4  5  6

Vérifier si un élément existe dans un tableau

Pour déterminer si un élément spécifié est présent dans un tableau, utilisez le mot clé in. L’exemple suivant vérifie si le nombre 5 est présent dans le tableau:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
if 5 in tab:
print("5 existe dans le tableau")

Sortie : 5 existe dans le tableau.

Longueur d'un tableau

Pour déterminer le nombre d’éléments d’un tableau, utilisez la fonction len(). L’exemple suivant affiche le nombre d’éléments dans le tableau:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
print(len(tab))

Sortie: 6

Ajouter des éléments au tableau

1- La méthode append :

Pour ajouter un élément à la fin du tableau, utilisez la méthode append(). L’exemple suivant ajoute le nombre 7 en utilisant la méthode append():

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
tab.append(7)
print(tab)

Sortie: array(‘i’, [1, 2, 3, 4, 5, 6, 7])

2- La méthode insert : 

On a aussi la méthode insert qui permet d’insérer un élément à une position précise dans le tableau. Exemple :

import array as arr
s1 = arr.array('i', [1, 2, 3])
s2 = arr.array('i', [4, 5, 6])
print(s1)
print(s2)
s3 = s1 + s2
print(s3)
s1.append(4)
print(s1)
s1.insert(0, 10)
print(s1)


Exercice1 :
Proposer un programme en python qui permet d’insérer une valeur x à une position p du tableau T [10,20,30,40,50]

Exercice  2: Tester le programme suivant et conclure le rôle de la méthode extend :

from array import *
T= array('i', range(1, 10))
print("Tableau initial: ",T)
T.append(100)
print("Après append :",T)
T.extend(range(200, 205))
print("Après extend : ",T)

Supprimer un élément du tableau

Il existe plusieurs méthodes pour supprimer des éléments d’un tableau:

1- remove() :

La méthode remove() supprime l’élément spécifié:

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
tab.remove(4)
print(tab)

 Sortie: array(‘i’, [1, 2, 3, 5, 6]).

2-pop() : 

La méthode pop() supprime l’index spécifié, (ou le dernier élément si l’index n’est pas spécifié):

import array as arr
tab = arr.array('i', [1, 2, 3, 4, 5, 6])
tab.pop()
print(tab)

 Sortie: array(‘i’, [1, 2, 3, 4, 5])

Exercice : Proposer un programme qui permet de supprimer une valeur sachant sa position dans le tableau

Exercice : Selon les résultats du programme suivant, prédire le rôle de l’opérateur del

from array import *
T = array('f', range(0, 10))
print("T initial : ",T)
del T[0]
print("T après del :",T)
del T[len(T)-1]
print("T apdès del : ",T)
del T
print("T :",T)

Remarque : comparaison entre les modules ‘array’ et ‘NumPy’

– Si tout ce que vous faites est de créer des tableaux de types de données simples et d’effectuer des E / S, le module array fonctionnera très bien.

– Si, d’un autre côté, vous voulez faire n’importe quel type de calcul numérique, le module array ne fournit aucune aide à ce sujet. NumPy (et SciPy) vous offrent une grande variété d’opérations entre les tableaux et les fonctions spéciales qui sont utiles non seulement pour le travail scientifique mais pour des choses comme la manipulation d’image avancée ou en général tout ce qui nécessite d’effectuer des calculs efficaces avec de grandes quantités de données.

Numpy est également beaucoup plus flexible, par exemple il prend en charge les tableaux de tout type d’objets Python, et est également capable d’interagir «nativement» avec vos propres objets s’ils sont conformes à l’interface du tableau.

Pour plus de détails, consulter le lien : https://docs.python.org/3/library/array.html

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

sql sous requêtes

Sous requêtes en SQL

Dans le language SQL Une sous-requête est une requête de sélection dont les résultats sont...

Laisser un commentaire

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