Séquences Python

Il n’y a pas à proprement parler de type séquence en Python, mais on désigne comme tels les objets qui appartiennent (entre autres) à l’un des quatre types suivants : les chaînes de caractères, les listes, les tuples et les intervalles (c’est-à-dire les objets créés par la fonction range). Au-delà des différences entre ces types de données, les séquences ont un certain nombre de propriétés importantes en commun :

  • Elles sont composées d’un nombre fini d’éléments auxquels on peut accéder par un indice. Ainsi seq[k] désigne l’élément situé en position k dans la séquence seq (attention car c’est très important : la numérotation commence à 0).
  • Un indice négatif signifie qu’on compte à partir de la fin. Ainsi seq[-1] désigne le dernier élément d’une séquence.
  • On peut effectuer des coupes (le terme anglais est slice). Ainsi seq[i:j] désigne le segment (chaîne, liste ou tuple) formé des éléments qui sont en position i (inclus) à (exclu, attention à ça !) dans la séquence seq.
  • On peut tester l’appartenance d’un élément à une séquence. La syntaxe est : elt in seq (résultat booléen).
  • On peut parcourir une séquence au sein d’une boucle for. La syntaxe est: for elt in seq .
  • La longueur d’une séquence seq (le nombre d’éléments dont elle est constituée) est donnée par len(seq).

Opérations communes sur les séquences

Dans le tableau ci-dessous, s et t désignent des séquences (chaînes, listes ou tuples ou range), x désigne un objet pouvant appartenir à s, et on note i, j, k, n des entiers.

x in sTrue si x est dans s, False sinon
x not in sFalse si x est dans s, True sinon
s+tConcaténation de s et t
s*n, n*sconcatène n copies de s
len(s)longueur de la séquence s
s[i]le i-ème élément de s
s[i:j]coupe de s pour indices [i, j[
s[i:j:k]idem, mais avec un “pas” k
min(s)le plus petit élément de s
max(s)le plus grand élément de s
s.index(x)le 1er indice où x est dans s
s.count(x)le nombre de x dans s

Pour voir la suite de cette page, vous devez :

Page précédente (calculs avec Python)
Page suivante (la programmation en Python)