Apprenez la structure des données de la liste Python - Partie 1

Apprenez la structure des données de la liste Python - Partie 1

Structure de données est une collection de types de données, la relation entre eux et les fonctions ou opérations qui peuvent être appliquées sur les données. Le type de données peut être chaîne, Entier, Valeur flottante et ainsi de suite.

Quelle est la différence entre l'objet mutable / immuable?
Objets mutables
  1. Objets dont l'état peut être modifié une fois qu'il est créé comme l'ajout, la mise à jour ou la suppression des éléments.
  2. Listes, dictionnaire, set, bytearray sont des types d'objets mutables en python.
Objets immuables
  1. L'état d'objet ne peut pas être modifié. Une fois l'objet créé, nous ne pouvons pas ajouter, supprimer ou mettre à jour les éléments.
  2. String, entier, Tuples, Frozenset sont quelques-uns des types d'objets immuables à Python.
Quelle est la différence entre la structure de données homogène / hétérogène?
  1. Structure de données homogène - Les éléments de données seront du même type de données (Ex: Array).
  2. Structure de données hétérogènes - Les éléments de données peuvent ne pas être du même type de données (ex: liste, tuples, ensembles etc…).
Quels sont le type de données primitif et non primitif?
Types de données primitives et non primitives

Avant de comprendre la fonctionnalité de la structure de données intégrée, voyons quelques fonctions intégrées qui seront utilisées avec des objets de structure de données.

  • dir (obj) - une fonction intégrée qui renverra l'attribut et les méthodes.
  • Len (OBJ) - Renvoie la longueur (le nombre d'éléments) d'un objet. L'argument peut être une séquence (comme une chaîne, des octets, des tuple, une liste ou une gamme) ou une collection (comme un dictionnaire, un ensemble ou un ensemble gelé).
  • del - Ce mot-clé intégré est utilisé pour supprimer un objet d'un espace de noms ou supprimer les éléments d'un objet comme une liste, un dictionnaire, etc…
  • Type (OBJ) - La fonction type () renvoie le type de l'objet ou renvoie un nouvel objet de type en fonction des arguments passés.
  • identifiant() - Cette fonction renvoie «l'identité» d'un objet. C'est un entier qui est garanti d'être unique et constant pour cet objet au cours de sa vie.

Maintenant, comme vous avez vu peu de détails importants, continuons avec des structures de données Python.

Python Livré avec intégré structures de données ainsi que les utilisateurs peuvent définir leurs propres structures de données. La structure de données intégrée comprend LISTE, DICTIONNAIRE, Tuple, et ENSEMBLE. Certains des exemples de structures de données définies par l'utilisateur sont EMPILER, Files d'attente, ARBRE, Hashmap, etc…

Les personnes provenant d'autres langages de programmation seront très familières avec un type de tableau. Mais à Python, ils ne sont pas si communs.

Ici, la liste est un peu similaire à un tableau, mais la liste nous permet de stocker les valeurs de tout type de données (hétérogène) tandis que le tableau conservera les données d'un type particulier (int, float etc…). Pour utiliser le tableau, vous devez importer explicitement le tableau du module «tableau».

Dans cette série d'articles Python, nous examinerons ce qu'est un Structure de données et Structure de données intégrée Python.

Partie 1: Structure de données Python - Liste Partie 2: Structure de données Python - Tuples Partie 3: Structure de données Python - Dictionnaire Partie 4: Structure de données Python - Set / Frozenset

LISTE

Liste est une structure de données qui est une collection de différents types de données. Que fait «Collecte de différents types de données" moyens? Liste peut stocker des chaînes, des entiers, des valeurs de points flottants, une liste imbriquée et ainsi de suite.

Liste Les objets sont «Mutable"Ce qui signifie que les éléments créés à l'intérieur de la liste sont accessibles, modifiés ou supprimés. Liste d'indexation du support. Chaque élément des listes est affecté à une adresse et cette adresse peut être utilisée pour accéder ou modifier la valeur de l'élément particulier.

  • Créer une liste
  • Liste d'insertion / accès / modification
  • Supprimer la liste

CRÉER UNE LISTE

La liste peut être créée à l'aide de crochets.

>>> name_empty = [] # list vide >>> name = ['karthi', 'leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] # Liste avec le type de données de chaîne >>> name_int = [1,2,3] # Liste avec type de données entier >>> name_mixed = [name_int, nom, 1,2,3.14] # Liste avec des éléments de liste imbriqués. >>> name_mixed [[1, 2, 3], ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'], 1, 2, 3.14] >>> name_int [1, 2, 3] 

Nous pouvons utiliser l'intégration taper() fonction pour vérifier le type d'objet.

>>> type (nom) 
Créer une liste dans Python

Nous pouvons accéder au méthodes et les attributs de la liste Instance utilisant dir () fonction.

>>> dir (name) ['__add__', '__class__', '__connains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattRribute__ ',' __getItem__ ',' __gt__ ',' __hash__ ',' __iadd__ ',' __imul__ ',' __init__ ',' __init_subclass__ ',' __iter__ ',' __le__ ', __Len__ '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__seTitem__', '__sizeof__' ' ',' Clear ',' Copy ',' Count ',' extend ',' index ',' insérer ',' pop ',' supprimer ',' inverse ',' tri '] 

Nous pouvons trouver le nombre total d'éléments dans la liste en utilisant Len () méthode.

>>> Len (nom) 

Nous pouvons créer une nouvelle liste à partir d'une liste existante en utilisant liste.copie() méthode.

>>> name_new = nom.copy () >>> name_new ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] 
Vérifiez les méthodes et les attributs de la liste

Liste d'insertion / accéder / modification

Nous pouvons insérer un élément dans une liste à n'importe quelle position en utilisant liste.insérer (i, x) méthode.

>>> name = ['Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Nom ['Leo', 'Matt', 'Kane', 'Scott' , 'Petter', 'will'] >>> nom.INSERT (0, 'Tom') # La méthode INSERT prend 2 arguments (position d'index, élément) >>> Nom ['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', ' Will '] # Tom est inséré à la 0e position. 
Insérer des éléments dans la liste

On peut utiliser liste.Ajouter (x) Méthode pour ajouter un seul élément dans la liste. Cela insérera l'élément à la fin de la liste.

>>> name = [] >>> len (nom) 0 >>> nom.ajouter ('leo') >>> nom.ajouter ('Matt') >>> Nom.APPEND ('KANE') >>> PRINT (NAME) ['Leo', 'Matt', 'Kane'] 
Ajouter l'élément dans la liste

On peut utiliser liste.étendre() Méthode pour ajouter plusieurs éléments à la liste.

>>> new_name = ['Gowtham', 'Martin', 'Luis'] >>> Nom.Extend (new_name) >>> name ['will', 'petter', 'scott', 'kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', ' Luis '] 
Ajouter plusieurs éléments à liste

Nous pouvons également utiliser '+' opérateur pour combiner deux liste. Les deux liste peuvent être de types de données différents.

>>> a = [1,2,3] >>> b = [2,3,3] >>> c = a + b >>> c [1, 2, 3, 2, 3, 3]> >> d = ['karthi', 'kenny'] >>> e = a + d >>> e [1, 2, 3, 'karthi', 'kenny'] 
Combinez deux liste dans Python

Comme déjà indiqué les listes, les objets sont mutables. Un élément de liste peut être modifié en faisant référence à la position d'index et en lui attribuant une valeur.

>>> Nom # avant modifié ['Tom', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Name [0] = 'Karthi' >>> Nom # After Modified ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] 
Modifier l'élément de liste par position d'index

Le liste prend en charge l'indexation positive et négative.

L'indexation commence à partir de 0 et l'indexation négative commence à partir de -1.

Indexation python

Nous pouvons accéder à l'élément de liste en utilisant leur position d'index.

>>> Nom [0] # Accès à l'élément de liste à Index 0 'Leo' >>> Nom [1] 'Matt' >>> Nom [4] 'Petter' >>> Nom [5] 'Will' >> > nom [-1] # Accès à l'élément de liste avec indexation négative 'will' >>> nom [-6] 'leo' 
Élément de liste d'accès à l'aide de la position d'index

Nous pouvons également utiliser le tranchage pour accéder aux éléments de la liste. Le tranchage nous permet d'accéder à une gamme d'éléments en définissant les paramètres de démarrage, de fin, étape.

# Syntaxe: liste [position de départ, position de fin, étape] >>> nom [0: 3] ['Tom', 'Leo', 'Matt'] >>> Nom [:] ['Tom', 'Leo' , 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Nom [: 4] ['Tom', 'Leo', 'Matt', 'Kane'] >>> Nom [: -2] ['Tom', 'Leo', 'Matt', 'Kane', 'Scott'] >>> Nom [: - 1] ['Tom', 'Leo', 'Matt', 'Kane ',' Scott ',' Petter '] >>> Nom [: - 1: 2] [' Tom ',' Matt ',' Scott '] 
Plage d'accès des éléments dans la liste

Nous pouvons trouver le nombre d'occasions pour une valeur donnée en utilisant liste.Count (x) méthode.

>>> name_int = [1,1,2,3,1] >>> name_int.Compte (1) 3 
Trouver l'occurrence de la valeur

Nous pouvons trouver la position d'index d'un élément donné en utilisant liste.index (x [, start [, end]]) méthode.

>>> Nom # inséré 'Will' à la fin de la liste. Maintenant, nous avons 2 noms «Will». ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will'] >>> Nom.index ('will) # Renvoie la position d'index de la première occurrence de x. 0 >>> Nom.index ('will', 2) # Démarrer l'index positon'2 'est donné. 7 >>> Nom.index ('will', 2,4) # La position d'index de démarrage et de fin est donnée. Puisqu'il n'y a aucune occurrence de «volonté» dans la position de recherche donnée, il lancera l'erreur de valeur. Traceback (dernier appel dernier): fichier "", ligne 1, dans ValueError: 'Will' n'est pas dans la liste 

On peut utiliser liste.inverse() Méthode pour inverser les éléments de la liste.

>>> Nom ['Karthi', 'Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Nom.reverse () >>> name ['will', 'petter', 'scott', 'kane', 'Matt', 'Leo', 'Karthi'] 
Éléments inversés dans la liste

Supprimer la liste

On peut utiliser liste.pop (x) Méthode pour supprimer un élément d'une liste à X position. Cette fonction supprimera l'élément de la liste et affichera l'élément supprimé. Si X n'est pas spécifié alors populaire() La méthode renverra le dernier élément de la liste.

>>> Nom ['Will', 'Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis']> >> nom.Pop (0) 'Will' >>> Nommez ['Petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin', 'Luis '] >>> Nom.pop () 'Luis' 

Nous pouvons également utiliser liste.Supprimer (x) Méthode pour supprimer l'élément de la liste. Ici X prend la valeur de l'élément et lance un Value Enerror si X n'est pas dans la liste.

>>> name = ['Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Nom.retirer ('leo') >>> name ['Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Nom.retirer ('leo') Traceback (dernier appel dernier): fichier "", ligne 1, dans ValueError: liste.supprimer (x): x pas dans la liste 

Nous pouvons rendre une liste vide en attribuant le nom de la liste aux carrés ou en utilisant liste.clair() méthode.

>>> name1 = nom.copy () >>> name1 ['petter', 'Scott', 'Kane', 'Matt', 'Leo', 'Karthi', 'Will', 'Gowtham', 'Martin'] >>> Name [' Petter ',' Scott ',' Kane ',' Matt ',' Leo ',' Karthi ',' Will ',' Gowtham ',' Martin '] >>> name = [] >>> name [] >> > name1.clear () >>> name1 [] 

Au lieu d'utiliser des méthodes de liste pour rendre la liste vide ou supprimer un élément de la liste, nous pouvons utiliser le mot-clé intégré del Pour effectuer ces actions. Le "Del" Le mot-clé peut supprimer un objet de liste de la mémoire ou supprimer un élément d'une liste ou supprimer un élément d'une tranche.

>>> name = ['Leo', 'Matt', 'Kane', 'Scott', 'Petter', 'Will'] >>> Del Name [0] >>> Name ['Matt', 'Kane' , 'Scott', 'Petter', 'Will'] >>> Del Name [-3:] >>> Name ['Matt', 'Kane'] >>> Del Name [:] >>> Nom [] 

Intégré identifiant() fonction renvoie le "identité«D'un objet. Ceci est un entier qui est garanti d'être unique et constant pour cet objet au cours de sa vie.

>>> id (nom) 139979929658824 >>> del name >>> id (nom) Traceback (dernier appel dernier): fichier "", ligne 1, dans NameError: le nom 'name' n'est pas défini 

Note: Nous avons supprimé la variable de liste de la mémoire en utilisant del (), Par conséquent, il lance l'erreur de nom.

Aide () Fonction: 

Aide intégrée fonction() est très utile pour obtenir des détails sur un objet ou des méthodes particulier de cet objet.

aide (objet) aide (objet.méthode) 
Résumé

Jusqu'à présent dans cet article, nous avons vu comment nous pouvons utiliser un Répertorier la structure des données Pour stocker, accéder, modifier, supprimer les objets de liste en utilisant les méthodes de liste. Nous avons également vu des fonctions intégrées comme identifiant(), dir (), taper(), aider() qui sont des fonctions très efficaces. Nous avons également la compréhension de la liste dans Python qui fournit une manière plus concise et lisible de créer une liste.