Sélections dans une liste


Prendre un élément en comptant à partir de la fin


>>> # On reprend une liste de test, un peu plus longue cette fois, et homogène.

>>> maliste = ["zéro", "un", "deux", "trois", "quatre", "cinq"]

>>> maliste[-1]     # on demande le dernier élément

'cinq'

>>> maliste[-2]     # l'avant-dernier

'quatre'

>>> maliste[-3]     # l'avant-avant-dernier (ou antépénultième), et ainsi de suite…

'trois'

Prendre une partie d'une liste

>>> maliste[1:3]    # Ici on demande une partie de la liste et non un élément seul
['un', 'deux']
>>> # On remarque que cela fonctionne comme range(1,3), le 3 n'est pas compris.
>>> # Voyons maintenant si l'on ne précise pas l'indice de départ ou d'arrivée:
>>> maliste[1:]     # Sans indice d'arrivée, on ne s'arrête qu'à la fin,
['un', 'deux', 'trois', 'quatre', 'cinq']
>>> maliste[:3]     # sans indice de départ, on commence du tout début.
['zéro', 'un', 'deux']


Le mot le plus long


Je vous présente ici un petit algorithme qui trouve le mot le plus long dans le texte stocké dans la variable texte.


>>> texte = "voici une suite de mots presque en vrac"

>>> mot_long = ""  # Cette variable contiendra le mot cherché.

>>> # Le recordman de longueur en quelque sorte.

... # Pour l'instant on stocke le mot vide "" dedans.

... mots = texte.split()              # On construit la liste des mots.

>>> for mot in mots:                  # On parcourt cette liste (boucle for).

...     if len(mot) > len(mot_long):  # Si le mot rencontré bat le record de longueur,

...         mot_long = mot            # on le proclame recordman.

...

>>> mot_long                          # On affiche le résultat.

'presque'


Liste des rangs d'apparition d'une lettre


>>> mot = "apparition"

>>> rangs = []                    # Cette liste va accumuler les rangs de la lettre *i*.

>>> for rang in range(len(mot)):  # La variable rang parcourt les entiers de 0 au rang de la dernière lettre du mot.

...     if mot[rang] == 'i':

...         rangs.append(rang)    # Si la lettre du mot est 'i', on stocke le rang dans notre liste.

...

>>> rangs                         # On affiche le résultat.


Créé avec HelpNDoc Personal Edition: Générateur de documentation iPhone gratuit