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 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
,memoryview
- Types d'ensembles —
set
,frozenset
- Les types de correspondances —
dict
- Le type gestionnaire de contexte
- Generic Alias Type
- Autres types natifs
- Attributs spéciaux
- Integer string conversion length limitation
- 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
— Énumerationsgraphlib
— 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
--- Core tools for working with streamstime
— Accès au temps et conversionsargparse
-- Parseur 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
— Mémoire partagée en accès direct depuis plusieurs processus- Le paquet
concurrent
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 base85binhex
— Encode et décode les fichiers binhex4binascii
--- 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
--- Minimal DOM implementationxml.dom.pulldom
--- Support for building partial DOM treesxml.sax
— Prise en charge des analyseurs SAX2xml.sax.handler
--- Base classes for SAX handlersxml.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
— Modules Serveur et Client XMLRPCxmlrpc.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
--- Color choosing dialogtkinter.font
--- Tkinter font wrapper- Tkinter Dialogs
tkinter.messagebox
--- Tkinter message promptstkinter.scrolledtext
— Gadget texte avec barre de défilementtkinter.dnd
--- Drag and drop supporttkinter.ttk
--- Tk themed widgetstkinter.tix
--- Extension widgets for 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
- Effects of the Python Development Mode
- ResourceWarning Example
- Bad file descriptor error example
doctest
— Exemples de tests interactifs en Pythonunittest
— Framework de tests unitairesunittest.mock
— Bibliothèque d'objets simulacresunittest.mock
--- getting started- 2to3 — Traduction automatique de code en Python 2 vers Python 3
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 generation
- 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__
— Point d'entrée des scriptswarnings
--- Contrôle des alertesdataclasses
— Classes de Donnéescontextlib
— 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
- Services du Langage Python
parser
— Accès aux arbres syntaxiquesast
— Arbres Syntaxiques Abstraitssymtable
--- Access to the compiler's symbol tablessymbol
— Constantes utilisées dans les Arbres Syntaxiquestoken
--- 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 divers
- 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 remplacés
aifc
— Lis et écrit dans les fichiers AIFF et AIFCasynchat
--- Gestionnaire d'interfaces de connexion (socket) commande/réponse asynchronesasyncore
— Gestionnaire de socket asynchroneaudioloop
— 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
- Considérations de sécurité