# `curses.ascii` — Utilitaires pour les caractères ASCII

Code source : Lib/curses/ascii.py

Le module `curses.ascii` fournit des constantes de nom pour les caractères ASCII et des fonctions permettant de tester l'appartenance à différentes classes de caractères ASCII. Les constantes fournies sont des noms pour les caractères de contrôle comme suit :

Nom | Signification
--- | ---

curses.ascii.NUL

curses.ascii.SOH

Début d'en-tête, interruption de console

curses.ascii.STX

Début du texte

curses.ascii.ETX

Fin du texte

curses.ascii.EOT

Fin de transmission

curses.ascii.ENQ

Enquête, va avec le contrôle de flux `ACK`

curses.ascii.ACK

Accusé de réception

curses.ascii.BEL

Caractère d'appel

curses.ascii.BS

Retour arrière

curses.ascii.TAB

Tabulation

curses.ascii.HT

Alias pour `TAB`: « Tabulation horizontale »

curses.ascii.LF

Saut de ligne

curses.ascii.NL

Alias pour `LF`: « Nouvelle ligne »

curses.ascii.VT

Tabulation verticale

curses.ascii.FF

Saut de page

curses.ascii.CR

Retour chariot

curses.ascii.SO

Bascule vers l’ensemble de caractères alternatif

curses.ascii.SI

Reprise de l'ensemble de caractères par défaut

curses.ascii.DLE

Échappement de liaison de données

curses.ascii.DC1

XON, pour le contrôle de flux

curses.ascii.DC2

Contrôle de périphérique 2, contrôle de flux en mode bloc

curses.ascii.DC3

XOFF, pour le contrôle de flux

curses.ascii.DC4

Contrôle de périphérique 4

curses.ascii.NAK

Accusé de réception négatif

curses.ascii.SYN

Inactif synchrone

curses.ascii.ETB

Fin du bloc de transmission

curses.ascii.CAN

Annuler

curses.ascii.EM

Fin du médium

curses.ascii.SUB

Substitut

curses.ascii.ESC

Échappement

curses.ascii.FS

Séparateur de fichiers

curses.ascii.GS

Séparateur de groupe

curses.ascii.RS

Séparateur d'enregistrement, terminateur en mode bloc

curses.ascii.US

Séparateur d'unités

curses.ascii.SP

Espace

curses.ascii.DEL

Caractère d'effacement

Notez que beaucoup d'entre elles ont peu de signification pratique dans l'utilisation moderne. Les mnémoniques proviennent de conventions de téléscripteur qui préexistent aux ordinateurs numériques.

Le module fournit les fonctions suivantes, basées sur celles de la bibliothèque C standard :

curses.ascii.isalnum(c)

  Vérifie si un caractère ASCII est alphanumérique ; il est équivalent à `isalpha(c) or isdigit(c)`.

curses.ascii.isalpha(c)

  Vérifie si un caractère ASCII est alphanumérique ; il est équivalent à `isupper(c) or islower(c)`.

curses.ascii.isascii(c)

  Vérifie si une valeur de caractère appartient à l'ensemble ASCII 7 bits.

curses.ascii.isblank(c)

  Vérifie si un caractère ASCII est caractère d'espacement, spécifiquement : espace ou tabulation horizontale.

curses.ascii.iscntrl(c)

  Vérifie si un caractère ASCII est un caractère de contrôle (dans la plage de 0x00 à 0x1f ou 0x7f).

curses.ascii.isdigit(c)

  Vérifie si un caractère ASCII est un chiffre décimal, de `'0'` à `'9'`. C'est équivalent à `c in string.digits`.

curses.ascii.isgraph(c)

  Vérifie si un caractère ASCII est n'importe quel caractère imprimable à l'exception de l'espace.

curses.ascii.islower(c)

  Vérifie si un caractère ASCII est une lettre minuscule.

curses.ascii.isprint(c)

  Vérifie si un caractère ASCII est n'importe quel caractère imprimable, y compris l'espace.

curses.ascii.ispunct(c)

  Vérifie si un caractère ASCII imprimable n'est ni une espace ni un caractère alphanumérique.

curses.ascii.isspace(c)

  Vérifie si un caractère ASCII est un caractère d'espacement, spécifiquement : espace, saut de ligne, retour chariot, saut de page, tabulation horizontale, ou tabulation verticale.

curses.ascii.isupper(c)

  Vérifie si un caractère ASCII est une lettre majuscule.

curses.ascii.isxdigit(c)

  Vérifie si un caractère ASCII est un chiffre hexadécimal. C'est équivalent à `c in string.hexdigits`.

curses.ascii.isctrl(c)

  Vérifie si un caractère ASCII est un caractère de contrôle (valeurs ordinales de 0 à 31).

curses.ascii.ismeta(c)

  Vérifie si un caractère n'est pas ASCII (valeurs ordinales de 0x80 et plus).

Ces fonctions acceptent soit des entiers soit des chaînes de caractères d'un seul caractère ; lorsque l'argument est une chaîne, il est d'abord converti en utilisant la fonction intégrée `ord()`.

Notez que toutes ces fonctions vérifient les valeurs de bits ordinales dérivées du caractère de la chaîne que vous fournissez ; elles ne connaissent rien de l'encodage de caractères de la machine hôte.

Les deux fonctions suivantes acceptent soit une chaîne de caractères d'un seul caractère soit une valeur d'octet sous forme d'entier ; elles renvoient une valeur du même type.

curses.ascii.ascii(c)

  Renvoie la valeur ASCII correspondant aux 7 bits les moins significatifs de c.

curses.ascii.ctrl(c)

  Renvoie le caractère de contrôle correspondant au caractère donné (une opération ET bit-à-bit avec 0x1F est appliqué à la valeur du caractère).

curses.ascii.alt(c)

  Renvoie le caractère de contrôle correspondant au caractère donné (une opération OU bit-à-bit avec 0x80 est appliqué à la valeur du caractère).

La fonction suivante accepte soit une chaîne de caractères d'un seul caractère soit une valeur entière ; elle renvoie une chaîne de caractères.

curses.ascii.unctrl(c)

  Renvoie une représentation du caractère ASCII c sous forme d’une chaîne. Si c est imprimable, cette chaîne est le caractère lui-même. Si le caractère est un caractère de contrôle (0x00 – 0x1f), la chaîne se compose d'un accent circonflexe (`'^'`) suivi de la lettre majuscule correspondante. Si le caractère est un caractère de suppression ASCII (0x7f), la chaîne est `'^?'`. Si le bit meta du caractère est défini (0x80), le bit meta est supprimé, les règles précédentes appliquées, et `'!'` est ajouté au début du résultat.

curses.ascii.controlnames

  Tableau de chaînes de 33 éléments qui contient les mnémoniques ASCII pour les trente-deux caractères de contrôle ASCII de 0 (NUL) à 0x1f (US), dans l'ordre, ainsi que le mnémonique `SP` pour le caractère d'espace.