4 structures de données intégrées en Python : dictionnaires, listes, ensembles, tuples

Publié: 2020-03-24

Dans cet article, nous nous concentrerons sur les structures de données en Python et vous aiderons à comprendre clairement le sujet. Vous découvrirez ce qu'ils sont et comment ils fonctionnent. Nous avons également partagé de nombreux exemples pour vous assurer que vous n'avez aucun doute sur les sujets que nous avons partagés ici.

Alors, sans plus tarder, commençons.

Table des matières

Que sont les Structures de Données ?

Les structures de données vous permettent d'organiser et de gérer vos données de manière efficace et efficiente. Ils améliorent l'accessibilité de vos données. La modification des données stockées devient également beaucoup plus simple si vous disposez de structures de données appropriées. Ils vous permettent d'organiser et de stocker les données afin que vous puissiez effectuer des opérations sur celles-ci ultérieurement sans rencontrer aucune difficulté.

Python a deux types de structures de données. Les structures de données que Python prend implicitement en charge sont Set, Dictionary, List et Tuple. Ce sont les structures de données intégrées de Python.

Ensuite, il existe des structures de données que vous pouvez créer vous-même pour avoir un meilleur contrôle sur la fonctionnalité. Ce sont des structures de données définies par l'utilisateur, et elles incluent des listes liées, des graphiques, des arbres, des piles, des files d'attente et des HashMaps. Les structures de données définies par l'utilisateur sont également disponibles dans d'autres langages de programmation.

Lire la suite : 6 structures de données les plus couramment utilisées dans R

Structures de données intégrées en Python

Python a plusieurs structures de données intégrées. Ces structures de données intégrées vous aident à résoudre les problèmes de programmation rapidement et facilement. Comme nous l'avons mentionné précédemment, Python possède les structures de données intégrées suivantes :

  • Dictionnaires
  • Listes
  • Ensembles
  • Tuples

Discutons chacun d'eux en détail:

1. Dictionnaires

Nous utilisons des dictionnaires pour stocker les paires clé-valeur. Tout comme un dictionnaire physique stocke un mot avec sa signification, un dictionnaire en Python stocke des paires clé-valeur. Les termes sont les clés, tandis que les diverses significations associées à ces mots sont les valeurs. Avec la valeur, vous pouvez accéder aux clés.

Vous pouvez créer un dictionnaire avec des accolades de fleurs. Vous pouvez également utiliser la fonction dict() à cette fin. Voici un exemple:

my_dict = {} #dictionnaire vide

imprimer (my_dict)

my_dict = {1 : 'A', 2 : 'B'} #dictionnaire avec éléments

imprimer (my_dict)

La sortie du code ci-dessus :

{}

{1 : 'A', 2 : 'B'}

Vous pouvez modifier les valeurs du dictionnaire à l'aide des touches. Vous devez d'abord accéder aux touches pour modifier les valeurs. Une fois que vous avez localisé les clés, il vous suffit d'ajouter la paire clé-valeur requise pour obtenir le résultat souhaité.

mon_dict = {'Premier' : 'A', 'Second' : 'B'}

imprimer (my_dict)

my_dict['Second'] = 'C++' #changement d'élément

imprimer (my_dict)

my_dict['Third'] = 'Ruby' #ajout d'une paire clé-valeur

imprimer (my_dict)

La sortie du code ci-dessus :

{'Premier' : 'A', 'Deuxième' : 'B'}

{'Premier' : 'A', 'Deuxième' : 'C'}

{'Premier' : 'A', 'Deuxième' : 'C', 'Troisième' : 'D'}

Vous pouvez supprimer les valeurs de votre dictionnaire en utilisant la fonction pop(). La fonction pop() renvoie la valeur que vous aviez supprimée. Vous pouvez récupérer une paire clé-valeur via la fonction popitem(). Il renvoie le tuple de la paire. Vous pouvez également effacer tout le dictionnaire en utilisant la fonction clear(). Voici l'exemple :

mon_dict = {'Premier' : 'A', 'Deuxième' : 'B'', 'Troisième' : 'C'}

a = my_dict.pop('Third') élément #pop

print('Valeur :', a)

print('Dictionnaire:', my_dict)

b = my_dict.popitem() #pop la paire clé-valeur

print('Clé, paire de valeurs :', b)

print('Dictionnaire', my_dict)

my_dict.clear() #dictionnaire vide

print('n', my_dict)

La sortie du code ci-dessus :

Valeur : C

Dictionnaire : {'Premier' : 'A', 'Second' : 'B'}

Clé, paire de valeurs : ('Seconde', 'B')

Dictionnaire {'Premier' : 'A'}

{}

Lisez également : Idées et sujets de projet Python

2. Listes

Nous utilisons des listes pour stocker les données de manière séquentielle. Chaque élément de la liste a une adresse, également appelée index. La valeur d'index d'une liste va de 0 au dernier élément présent dans votre liste, et son nom est indexation positive. De même, lorsque vous revenez du dernier élément au premier et que vous comptez à partir de -1, cela s'appelle une indexation négative.

Vous pouvez créer une liste en utilisant des crochets et y ajouter des éléments selon vos besoins. Si vous laissez les crochets vides, la liste n'aurait aucun élément et elle serait également vide. Voici un exemple de liste :

my_list = [] #créer une liste vide

imprimer(ma_liste)

my_list = [A, B, C, 'example', Z] #créer une liste avec des données

imprimer(ma_liste)

La sortie du code ci-dessus :

[]

[A, B, C, 'exemple', Z]

Vous pouvez ajouter des éléments à votre liste en utilisant les fonctions insert(), extent() et append(). La fonction insert() ajoute les éléments qui ont été passés à la valeur d'index. La fonction insert() augmente également la taille de la liste.

Avec la fonction append(), vous pouvez ajouter tous les éléments qui lui sont passés en un seul élément. D'autre part, la fonction extend() peut ajouter les éléments un par un.

Voici un exemple:

ma_liste = [A, B, C]

imprimer(ma_liste)

my_list.append([555, 12]) #add comme un seul élément

imprimer(ma_liste)

my_list.extend([234, 'more_example']) #ajouter comme éléments différents

imprimer(ma_liste)

my_list.insert(1, 'insert_example') #ajouter un élément i

imprimer(ma_liste)

Sortie du code ci-dessus :

[A, B, C]

[A, B, C, [555, 12]]

[A, B, C, [555, 12], 234, 'plus_exemple']

[A, 'insérer_exemple', B, C, [555, 12], 234, 'plus_exemple']

Lorsque vous travaillez avec des listes, vous devez également supprimer certains éléments. Vous pouvez utiliser le mot-clé 'del'. C'est un mot-clé intégré de Python et il ne renvoie rien. Si vous voulez récupérer un élément, vous devrez utiliser la fonction pop() et pour supprimer un élément via sa valeur, vous devrez utiliser la fonction remove(). Voici l'exemple :

ma_liste = [A, B, C, 'exemple', Z, 10, 30]

del my_list[5] #supprimer l'élément à l'index 5

imprimer(ma_liste)

my_list.remove('example') #remove element with value

imprimer(ma_liste)

a = my_list.pop(1) #élément pop de la liste

print('Élément sauté : ', a, ' Liste restante : ', ma_liste)

my_list.clear() #vide la liste

imprimer(ma_liste)

La sortie du code ci-dessus :

[A, B, C, 'exemple', Z, 30]

[A, B, C, Z, 30]

Élément sauté : 2 Liste restante : [A, C, Z, 30]

[]

Vous pouvez transmettre les valeurs d'index en Python et obtenir les valeurs requises.

ma_liste = [A, B, C, 'exemple', Z, 10, 30]

for element in my_list : #accès aux éléments un par un

imprimer (élément)

print(my_list) #accéder à tous les éléments

print(my_list[3]) #access index 3 element

print(my_list[0:2]) #accéder aux éléments de 0 à 1 et exclure 2

print(my_list[::-1]) #access éléments en sens inverse

La sortie du code ci-dessus :

UNE

B

C

Exemple

Z

dix

30

[A, B, C, 'exemple', Z, 10, 30]

Exemple

[UN B]

[30, 10, Z, 'exemple', 3, 2, 1]

3 ensembles

Une collection d'éléments uniques et non ordonnés est appelée un ensemble. Ainsi, si vous répétez les données pour une raison quelconque, elles n'apparaîtront qu'une seule fois dans l'ensemble. Les ensembles en Python sont similaires aux ensembles que vous lisez en mathématiques. De leurs propriétés à leurs fonctions, vous trouverez de nombreuses similitudes entre eux.

Vous pouvez créer un ensemble en utilisant les accolades de fleurs et en transmettant ses valeurs. Voici un exemple :

mon_ensemble = {A, B, C, D, E, E, E} #créer un ensemble

imprimer(mon_ensemble)

La sortie du code ci-dessus :

{A, B, C, D, E}

Comme nous l'avons mentionné précédemment, vous pouvez exécuter toutes les fonctions des ensembles que vous effectuez en arithmétique dans les ensembles de Python. Avec la fonction union(), vous pouvez combiner les données présentes dans deux ensembles. La fonction intersection() vous donne les données présentes dans les deux ensembles mentionnés.

Vous avez la fonction difference() qui vous permet de supprimer les données disponibles dans les deux ensembles et vous donne les données qui ne sont pas communes entre eux. La fonction symmetric_difference() vous donne les données restantes dans ces ensembles.

mon_ensemble = {A, B, C, D}

mon_ensemble_2 = {C, D, E, F}

print(mon_ensemble.union(mon_ensemble_2), '———-', mon_ensemble | mon_ensemble_2)

print(mon_ensemble.intersection(mon_ensemble_2), '———-', mon_ensemble & mon_ensemble_2)

print(my_set.difference(my_set_2), '———-', my_set – my_set_2)

print(my_set.symmetric_difference(my_set_2), '———-', my_set ^ my_set_2)

mon_ensemble.clear()

imprimer(mon_ensemble)

La sortie du code ci-dessus :

{A, B, C, D, E, F} ———- {A, B, C, D, E, F}

{C, D} ———- {C, D}

{A, B} ———- {A, B}

{A, B, E, F} ———- {A, B, E, F}

ensemble()

Lisez aussi: Salaire d'un développeur Python en Inde

4. Tuples

Les tuples sont similaires aux listes, mais une fois que vous avez entré des données dans un tuple, vous ne pouvez pas le modifier à moins qu'il ne soit modifiable. Les comprendre peut être un peu délicat, mais ne vous inquiétez pas, notre exemple de code pourrait vous aider à cet égard. Vous pouvez créer un tuple à l'aide de la fonction tuple().

my_tuple = (A, B, C) #créer un tuple

imprimer(mon_tuple)

La sortie du code ci-dessus :

(A, B, C)

La méthode d'accès aux valeurs dans les tuples est la même que dans les listes.

my_tuple2 = (A, B, C, 'Upgrad') #éléments d'accès

pour x dans my_tuple2 :

impression(x)

imprimer(mon_tuple2)

imprimer(mon_tuple2[0])

print(my_tuple2[:])

La sortie du code ci-dessus :

UNE

B

C

Mise à niveau

(A, B, C, 'Améliorer')

UNE

(A, B, C, 'Améliorer')

Conclusion

Vous devez maintenant vous être familiarisé avec les différentes structures de données en Python . Nous espérons que vous avez trouvé cet article utile. Les structures de données jouent un rôle important en vous aidant à organiser, gérer et accéder à vos données. Il existe de nombreuses options parmi lesquelles choisir, et chacune d'entre elles a ses utilisations particulières.

Si vous souhaitez en savoir plus sur Python et les structures de données, vous devriez consulter nos cours.

Si vous êtes curieux d'en savoir plus sur python, tout sur la science des données, consultez le diplôme PG de IIIT-B & upGrad en science des données qui est créé pour les professionnels en activité et propose plus de 10 études de cas et projets, des ateliers pratiques, du mentorat avec l'industrie experts, 1-on-1 avec des mentors de l'industrie, plus de 400 heures d'apprentissage et d'aide à l'emploi avec les meilleures entreprises.

Quand le type de données du dictionnaire est-il utilisé ?

Le dictionnaire peut être défini comme un type de données précieux utilisé dans Python comme une collection de données stockées dans les paires de clés et de valeurs. Maintenant, les valeurs du dictionnaire peuvent être de n'importe quel type de données, mais les clés doivent être un type de données immuable comme un tuple, un entier ou une chaîne.

Les dictionnaires s'avèrent très pratiques lorsque vous souhaitez trouver une valeur instantanément sans parcourir toute la collection de données. En dehors de cela, un dictionnaire est également très utile lorsque l'ordre des données n'est pas important. Le type de données de dictionnaire est préféré lorsque la considération de la mémoire n'est pas un facteur important car ils ont tendance à occuper plus d'espace que les listes et les tuples.

Quelle est la différence entre les listes et les tuples ?

La liste et les tuples sont tous deux des types de données de séquence utiles pour stocker la collection de données en Python. La différence la plus significative entre les deux est que les listes sont modifiables, tandis que les tuples sont immuables. De plus, l'implication des itérations est beaucoup plus rapide dans les tuples que dans les listes.

Si vous souhaitez effectuer des opérations d'insertion et de suppression, les listes vous facilitent la tâche. Dans le même temps, les éléments sont mieux accessibles dans les tuples. Un autre facteur important qui détermine l'utilisation de toute structure de données est la mémoire. Ici, les listes ont tendance à consommer plus de mémoire que les tuples.

En quoi les ensembles sont-ils différents des listes ?

Les listes sont considérées comme l'outil le plus puissant de Python car elles ne doivent pas toujours être homogènes. Les listes et les ensembles peuvent contenir toutes sortes de types de données. Maintenant, les listes peuvent contenir des éléments en double, mais les ensembles ne peuvent jamais contenir de doublons, et ils disparaîtront simplement de l'ensemble.

L'ordre des éléments est maintenu dans les listes, mais les ensembles ne peuvent jamais maintenir l'ordre des éléments. Comme les listes occupent beaucoup d'espace de calcul, elles finissent par prendre énormément de temps. D'autre part, les ensembles utilisent le hachage pour effectuer des recherches et finissent par être beaucoup plus rapides que les listes.