Listes

Liste : structure de données contenant une série de valeurs ordonnées (possiblement de types différents)

ma_liste = [1, "deux", 3.0]
ma_liste_vide = []
  • Appeler les éléments d'une liste :

ma_liste[0] premier élément de la liste ma_liste[1] second élément de la liste

Warning

Les index commencent à 0 !

Note

i,j= positions dans la liste x= valeur

  • Récupérer la longueur d'une liste :

    len(ma_liste)
    

  • Prendre une tranche d'une liste :

    ma_liste[i:j]   # ⇒ éléments de l'indice i à l'indice j-1
    ma_liste[i:]    # ⇒ tous les éléments à partir de l'indice i
    ma_liste[:j]    # ⇒ tous les éléments jusqu'à l'indice j-1
    ma_liste[:-1]   # ⇒ tous les éléments sauf le dernier
    ma_liste[-1]    # ⇒ dernier élément
    

  • Concaténer des listes

    liste_1 + liste_2
    

  • Ajouter un élément à la fin d'une liste

    ma_liste.append(x)
    

  • Remplacer la valeur d'un élément à une position déterminée

    ma_liste[i] = x
    

  • Insérer un élément à une position déterminée

    ma_liste.insert(i, x)
    

  • Trier une liste en place

    ma_liste.sort()
    

  • Créer une copie triée d'une liste

    liste_triee = sorted(ma_liste)
    

  • Inverser une liste

    ma_liste.reverse()
    

  • Supprimer un élément d'une liste

    del ma_liste[i]
    ma_liste.remove(x)  # ne retire que la première occurrence de x
    

  • Compter le nombre d'occurrences de x dans une liste

    ma_liste.count(x)
    

  • Tester si un élément appartient ou pas à une liste

    if x in ma_liste:
    if x not in ma_liste:
    

Warning

Toutes les recherches par valeur dans la liste sont en O(n)
= de plus en plus lentes au fur et à mesure que la taille de la liste augmente

Une chaîne de caractères est une liste non modifiable

sequence = "ATGGCAT"
sequence[2] # => "G"

On peut créer une liste modifiable à partir de la chaîne

liste_sequence = list(sequence)

Listes de listes

liste = [[1, 2, 3], [4, 5, 6]]
liste[0]        # => [1, 2, 3]
liste[0][0]     # => 1
liste[1][2]     # => 6