La bibliothèque standard¶
Alors que La référence du langage Python décrit exactement la syntaxe et la sémantique du langage Python, ce manuel de référence de la Bibliothèque décrit la bibliothèque standard distribuée avec Python. Il décrit aussi certains composants optionnels typiquement inclus dans les distributions de Python.
La bibliothèque standard de Python est très grande, elle offre un large éventail d'outils comme le montre la longueur de la table des matières ci-dessous. La bibliothèque contient des modules natifs (écrits en C) exposant les fonctionnalités du système telles que les interactions avec les fichiers qui autrement ne seraient pas accessibles aux développeurs Python, ainsi que des modules écrits en Python exposant des solutions standardisées à de nombreux problèmes du quotidien du développeur. Certains de ces modules sont définis explicitement pour encourager et améliorer la portabilité des programmes Python en abstrayant des spécificités sous-jacentes en API neutres.
Les installateurs de Python pour Windows incluent généralement la bibliothèque standard en entier, et y ajoutent souvent d'autres composants. Pour les systèmes d'exploitation Unix, Python est typiquement fourni sous forme d'une collection de paquets, il peut donc être nécessaire d'utiliser le gestionnaire de paquets fourni par le système d'exploitation pour obtenir certains composants optionnels.
Au delà de la bibliothèque standard, il existe une collection grandissante de plusieurs centaine de milliers de composants (des programmes, des modules, ou des frameworks), disponibles dans le Python Package Index.
- Introduction
- Fonctions natives
- Constantes natives
- Types natifs
- Valeurs booléennes
- Opérations booléennes —
and
,or
,not
- Comparaisons
- Types numériques —
int
,float
,complex
- Les types itérateurs
- Types séquentiels —
list
,tuple
,range
- Type Séquence de Texte —
str
- Séquences Binaires —
bytes
,bytearray
,vue mémoire
- Types d'ensembles —
set
,frozenset
- Les types de correspondances —
dict
- Le type gestionnaire de contexte
- Types d'annotation de type — Alias générique, Union
- Autres types natifs
- Attributs spéciaux
- Limitation de longueur de conversion de chaîne vers un entier
- Exceptions natives
- Services de Manipulation de Texte
string
— Opérations usuelles sur des chaînesre
— Opérations à base d'expressions rationnellesdifflib
— Utilitaires pour le calcul des deltastextwrap
--- Encapsulation et remplissage de texteunicodedata
— Base de données Unicodestringprep
— Préparation des chaines de caractères internetreadline
— interface pour GNU readlinerlcompleter
— Fonction de complétion pour GNU readline
- Services autour des Données Binaires
- Types de données
datetime
— Types de base pour la date et l'heurezoneinfo
— Prise en charge des fuseaux horaires IANAcalendar
— Fonctions calendaires généralescollections
— Types de données de conteneurscollections.abc
--- Classes de base abstraites pour les conteneursheapq
— File de priorité basée sur un tasbisect
— Algorithme de bissection de listesarray
— Tableaux efficaces de valeurs numériquesweakref
--- Weak referencestypes
--- Dynamic type creation and names for built-in typescopy
— Opérations de copie superficielle et récursivepprint
— L’affichage élégant de donnéesreprlib
--- Alternaterepr()
implementationenum
— Énumérationsgraphlib
— Fonctionnalités pour travailler avec des structures de type graphe
- Modules numériques et mathématiques
numbers
— Classes de base abstraites numériques- Fonctions mathématiques —
math
- Fonctions mathématiques pour nombres complexes —
cmath
decimal
— Arithmétique décimale en virgule fixe et flottantefractions
— Nombres rationnelsrandom
— Génère des nombres pseudo-aléatoiresstatistics
— Fonctions mathématiques pour les statistiques
- Modules de programmation fonctionnelle
- Accès aux Fichiers et aux Dossiers
pathlib
— Chemins de système de fichiers orientés objetos.path
— manipulation courante des cheminsfileinput
— Parcourt les lignes provenant de plusieurs entréesstat
--- Interpretingstat()
resultsfilecmp
– Comparaisons de fichiers et de répertoirestempfile
— Génération de fichiers et répertoires temporairesglob
— Recherche de chemins de style Unix selon certains motifsfnmatch
— Filtrage par motif des noms de fichiers Unixlinecache
— Accès direct aux lignes d'un texteshutil
--- Opérations de haut niveau sur les fichiers
- Persistance des données
- Compression de donnée et archivage
- Formats de fichiers
- Service de cryptographie
- Services génériques du système d'exploitation
os
— Diverses interfaces pour le système d'exploitationio
— Outils de base pour l'utilisation des fluxtime
— Accès au temps et conversionsargparse
-- Analyseur d'arguments, d'options, et de sous-commandes de ligne de commandegetopt
– Analyseur de style C pour les options de ligne de commandelogging
— Fonctionnalités de journalisation pour Pythonlogging.config
--- Logging configurationlogging.handlers
— Gestionnaires de journalisation- Saisie de mot de passe portable
curses
--- Terminal handling for character-cell displayscurses.textpad
--- Text input widget for curses programscurses.ascii
--- Utilities for ASCII characterscurses.panel
--- A panel stack extension for cursesplatform
— Accès aux données sous-jacentes de la plateformeerrno
— Symboles du système errno standardctypes
— Bibliothèque Python d'appels à des fonctions externes
- Exécution concourante
threading
— Parallélisme basé sur les fils d’exécution (threads)multiprocessing
— Parallélisme par processusmultiprocessing.shared_memory
--- Shared memory for direct access across processes- The
concurrent
package concurrent.futures
--- Launching parallel taskssubprocess
— Gestion de sous-processussched
--- Event schedulerqueue
— File synchroniséecontextvars
— Variables de contexte_thread
— API bas niveau de gestion de fils d'exécution
- Réseau et communication entre processus
- Traitement des données provenant d'Internet
email
— Un paquet de gestion des e-mails et MIMEjson
— Encodage et décodage JSONmailbox
— Manipuler les boîtes de courriels dans différents formatsmimetypes
--- Map filenames to MIME typesbase64
— Encodages base16, base32, base64 et base85binascii
--- Conversion entre binaire et ASCIIquopri
— Encode et décode des données MIME quoted-printable
- Outils de traitement de balises structurées
html
— Support du HyperText Markup Languagehtml.parser
— Un analyseur syntaxique simple pour HTML et XHTMLhtml.entities
— Définitions des entités HTML générales- Modules de traitement XML
xml.etree.ElementTree
— L'API ElementTree XMLxml.dom
— L'API Document Object Modelxml.dom.minidom
— implémentation minimale de DOMxml.dom.pulldom
— gestion de la construction partielle des arbres DOMxml.sax
— Prise en charge des analyseurs SAX2xml.sax.handler
— Classes mères pour les gestionnaires SAXxml.sax.saxutils
— Utilitaires SAXxml.sax.xmlreader
--- Interface for XML parsersxml.parsers.expat
--- Fast XML parsing using Expat
- Gestion des protocoles internet
webbrowser
--- Convenient web-browser controllerwsgiref
— Outils et implémentation de référence de WSGIurllib
— Modules de gestion des URLsurllib.request
--- Extensible library for opening URLsurllib.response
--- Response classes used by urlliburllib.parse
--- Parse URLs into componentsurllib.error
--- Classes d'exceptions levées par urllib.requesturllib.robotparser
— Analyseur de fichiers robots.txthttp
— modules HTTPhttp.client
— Client pour le protocole HTTPftplib
— Le protocole client FTPpoplib
--- POP3 protocol clientimaplib
--- IMAP4 protocol clientsmtplib
--- SMTP protocol clientuuid
— Objets UUID d'après la RFC 4122socketserver
— Cadriciel pour serveurs réseauxhttp.server
--- serveurs HTTPhttp.cookies
— gestion d'état pour HTTPhttp.cookiejar
--- Cookie handling for HTTP clientsxmlrpc
--- XMLRPC server and client modulesxmlrpc.client
--- XML-RPC client accessxmlrpc.server
--- Basic XML-RPC serversipaddress
— Bibliothèque de manipulation IPv4/IPv6
- Services multimédia
- Internationalisation
- Cadriciels d'applications
- Interfaces Utilisateur Graphiques avec Tk
tkinter
— Interface Python pour Tcl/Tktkinter.colorchooser
— Boîte de dialogue de choix de couleurtkinter.font
— enveloppe pour les polices Tkinter- Boîtes de dialogue Tkinter
tkinter.messagebox
– Invites de messages Tkintertkinter.scrolledtext
— Gadget texte avec barre de défilementtkinter.dnd
– Prise en charge du glisser-déposertkinter.ttk
— Widgets sur le thème Tktkinter.tix
— Widgets d'extension pour Tk- IDLE
- Outils de développement
typing
— Prise en charge des annotations de typepydoc
— Générateur de documentation et système d’aide en ligne- Python Development Mode
doctest
— Exemples de tests interactifs en Pythonunittest
— Framework de tests unitairesunittest.mock
— Bibliothèque d'objets simulacresunittest.mock
--- getting started- 2to3 --- Automated Python 2 to 3 code translation
test
--- Regression tests package for Pythontest.support
--- Utilities for the Python test suitetest.support.socket_helper
--- Utilities for socket teststest.support.script_helper
--- Utilities for the Python execution teststest.support.bytecode_helper
--- Support tools for testing correct bytecode generationtest.support.threading_helper
--- Utilities for threading teststest.support.os_helper
--- Utilities for os teststest.support.import_helper
--- Utilities for import teststest.support.warnings_helper
--- Utilities for warnings tests
- Débogueur et instrumentation
- Paquets et distribution de paquets logiciels
- Environnement d'exécution Python
sys
— Paramètres et fonctions propres à des systèmessysconfig
--- Provide access to Python's configuration informationbuiltins
— Objets natifs__main__
— Environnement d'exécution principalwarnings
--- Contrôle des alertesdataclasses
--- Data Classescontextlib
— Utilitaires pour les contextes s'appuyant sur l'instructionwith
abc
— Classes de Base Abstraitesatexit
— Gestionnaire de fin de programmetraceback
--- Print or retrieve a stack traceback__future__
— Définitions des futursgc
— Interface du ramasse-miettesinspect
— Inspection d'objetssite
--- Site-specific configuration hook
- Interpréteurs Python personnalisés
- Importer des modules
zipimport
— Import de modules à partir d'archives Zippkgutil
— Utilitaire d'extension de packagemodulefinder
— Identifie les modules utilisés par un scriptrunpy
--- Locating and executing Python modulesimportlib
--- The implementation ofimport
importlib.resources
-- Package resource reading, opening and accessimportlib.resources.abc
-- Abstract base classes for resourcesimportlib.metadata
-- Accessing package metadata- The initialization of the
sys.path
module search path
- Services du Langage Python
ast
— Arbres Syntaxiques Abstraitssymtable
--- Access to the compiler's symbol tablestoken
--- Constantes utilisées avec les arbres d'analyse Python (parse trees)keyword
— Tester si des chaînes sont des mot-clés Pythontokenize
— Analyseur lexical de Pythontabnanny
— Détection d'indentation ambiguëpyclbr
--- Python module browser supportpy_compile
— Compilation de sources Pythoncompileall
— Génération du code intermédiaire des bibliothèques Pythondis
– Désassembleur pour le code intermédiaire de Pythonpickletools
--- Tools for pickle developers
- Services spécifiques à MS Windows
- Services spécifiques à Unix
posix
— Les appels système POSIX les plus courantspwd
--- The password databasegrp
--- The group databasetermios
— Contrôle de terminal de style POSIXtty
— Fonctions de gestion du terminalpty
— Outils de manipulation de pseudo-terminauxfcntl
--- Thefcntl
andioctl
system callsresource
--- Resource usage informationsyslog
--- Routines de bibliothèque syslog Unix
- Modules command-line interface (CLI)
- Modules remplacés
aifc
— Lis et écrit dans les fichiers AIFF et AIFCasynchat
--- Asynchronous socket command/response handlerasyncore
--- Asynchronous socket handleraudioop
— Manipulation de données audio brutescgi
--- Common Gateway Interface supportcgitb
— Gestionnaire d'exceptions pour les scripts CGIchunk
--- Read IFF chunked datacrypt
--- Function to check Unix passwordsimghdr
--- Determine the type of an imageimp
--- Access the import internalsmailcap
— Manipulation de fichiers Mailcapmsilib
--- Read and write Microsoft Installer filesnis
— Interface à Sun's NIS (pages jaunes)nntplib
--- NNTP protocol clientoptparse
--- Parser for command line optionsossaudiodev
--- Access to OSS-compatible audio devicespipes
— Interface au pipelines shellsmtpd
--- SMTP Serversndhdr
— Détermine le type d'un fichier audiospwd
— La base de données de mots de passe shadowsunau
--- Read and write Sun AU filestelnetlib
--- Telnet clientuu
— Encode et décode les fichiers uuencodexdrlib
--- Encode and decode XDR data
- Security Considerations