Le module bisect

Adresse : http://docs.python.org/3.3/library/bisect.html

Le module bisect permet de rechercher des positions d’insertion (et d’insérer de nouvelles valeurs) dans une liste triée.

Les positions d’insertion peuvent être calculées soit “par la gauche”, soit (par défaut) “par la droite” (c’est important si on veut insérer des valeurs qui figurent déjà dans la liste).

On peut également effectuer des insertions (ou chercher des positions) en spécifiant un intervalle de positions (mais attention, l’insertion effective risque alors de briser la nature globalement triée de la liste).

La documentation Python contient un certain nombre d’exemples montrant comment “humaniser” un peu les fonctions précédentes, notamment dans les recherches d’occurrences dans une liste triée.

On trouvera ces fonctions ici : http://docs.python.org/3.3/library/bisect.html#searching-sorted-lists

Voici un exemple d’utilisation du module bisect (créer une liste triée par insertions successives d’entiers aléatoires) :

Retour à l’accueil du cours Python/Numpy

Sommaire du chapitre 7

  1. Le module random
  2. Le module decimal
  3. Le module fractions
  4. Le module string
  5. Le module itertools
  6. Les modules operator et functools
  7. Le module time
  8. La classe Counter du module collections
  9. La classe deque du module collections
  10. Le module heapq
  11. Le module bisect
  12. Le module copy
  13. Autres modules et adresses utiles