======Listes, piles, files===== Les listes, les piles et les files sont des types de structures de données. Elles sont qualifiées de "linéaires". ===== Listes : ===== Opérations pouvant être effectuées sur une liste : * créer une liste vide -> //list = [ ]// * tester si une liste est vide -> //if not list:// * ajouter un élément en tête de liste ->// list.append('element')// * supprimer la tête x d'une liste L et renvoyer cette tête x -> //list.pop()// * compter le nombre d'éléments présents dans une liste ->// len(list) // ===== Piles : ===== {{:les_fiches_revisions:structure_des_donnees:pile.png?nolink&200|}} Dans une pile, le dernier à rentrer sera le premier à sortir. [principe LIFO -> //Last In First Out//] Opérations pouvant être effectuées sur une pile : * créer une pile vide -> //P = [ ]// * savoir si une pile est vide -> //if not P:// * empiler un nouvel élément sur la pile -> //P.append(element)// * récupérer l'élément au sommet de la pile tout en le supprimant, "dépiler" -> //P.pop()// * accéder à l'élément situé au sommet de la pile sans le supprimer de la pile -> //P[-1]// * connaitre le nombre d'éléments présents dans la pile -> //len(P)// ==== Exemple : ==== annee = [2016,2017,2018,2019,2020,2021] # création d'une pile "annee" annee.append(2022) # ajoute 2022 à la pile -> on empile annee.pop() # supprime l'élément en haut de la pile -> on dépile ===== Files : ===== {{:les_fiches_revisions:structure_des_donnees:file.png?nolink&200|}} Dans une file, le premier élément entré est le premier à sortir. [principe FIFO -> //First In First Out//] Opérations pouvant être effectuées sur une file : * créer une file vide -> //F = [ ]// * savoir si une file est vide -> //if not F:// * ajouter un nouvel élément à la file -> //F.insert(0,element)// * récupérer l'élément situé en bout de file tout en le supprimant -> //F.pop()// * accéder à l'élément situé en bout de file sans le supprimer de la file -> //F[0]// * connaitre le nombre d'éléments présents dans la file -> //len(F) // ======Dictionnaires====== Au lieu d'associer une valeur à un index comme dans une liste, un dictionnaire associe une clef à une valeur. Opérations pouvant être effectuées sur un dictionnaire : * créer un dictionnaire ->//dico = {}// * associer une nouvelle valeur à une nouvelle clef -> //dico["nouvelle_clef"] = "nouvelle_valeur"// * modifier un couple clef:valeur en changeant sa valeur -> //dico["clef"] = "nouvelle_valeur"// * supprimer une clef -> //del dico["clef"]// * rechercher une valeur à l'aide de la clef associée à cette valeur -> //dico.get["clef"] // ===== Exemple : ===== # Création d'un dictionnaire avec l'identité d'un individu dico = {"Nom" : 'Pierre', "Prénom" : 'Antoine', "Age" : 30} dico["Ville"] = 'Nantes' # ajout d'une clé et d'une valeur dans le dictionnaire del dico["Ville"] # suppression de la clé 'Ville' et de sa valeur dico["Age"] = 32 # modification de la valeur de la clé 'Age' ''JV''