Services génériques du système d'exploitation
*********************************************

Les modules documentés dans ce chapitre fournissent des interfaces
vers des fonctionnalités communes à la grande majorité des systèmes
d'exploitation, telles que les fichiers et l'horloge.  Bien que ces
interfaces soient classiquement calquées sur les interfaces Unix ou C,
elles sont aussi disponibles sur la plupart des autres systèmes. En
voici un aperçu :

* "os" --- Miscellaneous operating system interfaces

  * Noms de fichiers, arguments en ligne de commande, et variables
    d'environnement

  * Le mode UTF-8 de Python

  * Paramètres de processus

  * Création de fichiers objets

  * Opérations sur les descripteurs de fichiers

    * Demander la taille d'un terminal

    * Héritage de descripteurs de fichiers

  * Fichiers et répertoires

    * Attributs étendus pour Linux

  * Gestion des processus

  * Interface pour l'ordonnanceur

  * Diverses informations sur le système

  * Nombres aléatoires

* "io" --- Core tools for working with streams

  * Aperçu

    * Entrée/sortie de texte

    * Binary I/O

    * Raw I/O

  * Encodage de texte

    * Opt-in EncodingWarning

  * Interface de haut niveau du module

  * Class hierarchy

    * I/O Base Classes

    * Raw File I/O

    * Buffered Streams

    * Entrée/sortie de texte

  * Performances

    * Binary I/O

    * Entrée/sortie de texte

    * Fils d'exécution

    * Réentrance

* "time" --- Time access and conversions

  * Fonctions

  * Constantes d’identification d’horloge

  * Constantes de fuseau horaire

* "argparse" --- Parser for command-line options, arguments and
  subcommands

  * Objets "ArgumentParser"

    * Le paramètre *prog*

    * Le paramètre *usage*

    * Le paramètre *description*

    * Le paramètre *epilog*

    * Le paramètre *parents*

    * Le paramètre *formatter_class*

    * Le paramètre *prefix_chars*

    * Le paramètre *fromfile_prefix_chars*

    * Le paramètre *argument_default*

    * Le paramètre *allow_abbrev*

    * Le paramètre *conflict_handler*

    * Le paramètre *add_help*

    * Le paramètre *exit_on_error*

  * La méthode *add_argument()*

    * Le paramètre *name_or_flags*

    * Le paramètre *action*

    * Le paramètre *nargs*

    * Le paramètre *const*

    * Le paramètre *default*

    * Le paramètre *type*

    * Le paramètre *choices*

    * Le paramètre *required*

    * Le paramètre *help*

    * Le paramètre *metavar*

    * Le paramètre *dest*

    * Classes Action

  * La méthode *parse_args()*

    * Syntaxe de la valeur des options

    * Arguments invalides

    * Arguments contenant "-"

    * Arguments abrégés (par comparaison de leurs préfixes)

    * Au-delà de "sys.argv"

    * L'objet "Namespace"

  * Autres outils

    * Sous commandes

    * Objets "FileType"

    * Groupes d'arguments

    * Exclusion mutuelle

    * Valeurs par défaut de l'analyseur

    * Afficher l'aide

    * Analyse partielle

    * Personnaliser le *parsing* de fichiers

    * Méthodes d'interruptions

    * Analyse entremêlée

    * Registering custom types or actions

  * Exceptions

    * Tutoriel *argparse*

      * Concepts

      * Les bases

      * Introduction aux arguments positionnels

      * Introduction aux arguments optionnels

        * Les paramètres raccourcis

      * Combinaison d'arguments positionnels et optionnels

      * Aller un peu plus loin

        * Specifying ambiguous arguments

        * Paramètres en conflit

      * How to translate the argparse output

      * Custom type converters

      * Conclusion

    * Mettre à jour du code "optparse"

* "getopt" --- C-style parser for command line options

* "logging" --- Logging facility for Python

  * Enregistreurs

  * Niveaux de journalisation

  * Gestionnaires

  * Formateurs

  * Filtres

  * Objets LogRecord

  * LogRecord attributes

  * LoggerAdapter Objects

  * Thread Safety

  * Fonctions de niveau module

  * Module-Level Attributes

  * Integration with the warnings module

* "logging.config" --- Logging configuration

  * Configuration functions

  * Security considerations

  * Configuration dictionary schema

    * Dictionary Schema Details

    * Incremental Configuration

    * Object connections

    * User-defined objects

    * Handler configuration order

    * Access to external objects

    * Access to internal objects

    * Import resolution and custom importers

    * Configuring QueueHandler and QueueListener

  * Configuration file format

* "logging.handlers" --- Logging handlers

  * Gestionnaire à flux — *StreamHandler*

  * Gestionnaire à fichier — *FileHandler*

  * Gestionnaire à puits sans fond — *NullHandler*

  * Gestionnaire à fichier avec surveillance — *WatchedFileHandler*

  * Base des gestionnaires à roulement — *BaseRotatingHandler*

  * Gestionnaire à roulement de fichiers — *RotatingFileHandler*

  * Gestionnaire à roulement de fichiers périodique —
    *TimedRotatingFileHandler*

  * Gestionnaire à connecteur — *SocketHandler*

  * DatagramHandler

  * SysLogHandler

  * NTEventLogHandler

  * SMTPHandler

  * MemoryHandler

  * HTTPHandler

  * QueueHandler

  * QueueListener

* "getpass" --- Portable password input

* "curses" --- Terminal handling for character-cell displays

  * Fonctions

  * Window Objects

  * Constantes

* "curses.textpad" --- Text input widget for curses programs

  * Textbox objects

* "curses.ascii" --- Utilities for ASCII characters

* "curses.panel" --- A panel stack extension for curses

  * Fonctions

  * Panel Objects

* "platform" ---  Access to underlying platform's identifying data

  * Multiplateformes

  * Plateforme Java

  * Plateforme Windows

  * macOS Platform

  * Plateformes Unix

  * Linux Platforms

* "errno" --- Standard errno system symbols

* "ctypes" --- A foreign function library for Python

  * Didacticiel de *ctypes*

    * Chargement des DLL

    * Accès aux fonctions des DLL chargées

    * Appel de fonctions

    * Types de données de base

    * Appel de fonctions, suite

    * Calling variadic functions

    * Appel de fonctions avec des types de données personnalisés

    * Définition du type des arguments nécessaires (prototypes de
      fonction)

    * Types de sortie

    * Passage de pointeurs (passage de paramètres par référence)

    * Structures et unions

    * Alignement et boutisme des structures et des unions

    * Champs de bits dans les structures et les unions

    * Tableaux

    * Pointeurs

    * Conversions de type

    * Types incomplets

    * Fonctions de rappel

    * Accès aux variables exportées depuis une DLL

    * Pièges

    * Types de données à taille flottante

  * Référence du module

    * Recherche de bibliothèques partagées

    * Chargement des bibliothèques partagées

    * Fonctions externes

    * Prototypes de fonction

    * Fonctions utilitaires

    * Types de données

    * Types de données de base

    * Types de données dérivés de Structure

    * Tableaux et pointeurs
