2.3. Identificateurs et mots réservés

On appelle identificateur le nom choisi par le programmeur pour désigner une variable (ou une autre donnée du programme telle qu’une fonction, comme on le verra par la suite). Si Python permet de choisir très librement les identificateurs, il existe quelques restrictions et certaines conventions qu’il est bon de respecter. En outre, certains mots sont réservés et ne peuvent être utilisés comme identificateurs.

2.3.1. Règles et conventions

Les variables peuvent porter n’importe quel nom pourvu qu’il soit uniquement composé de lettres de l’alphabet (a-z et A-Z), de chiffres (0-9) et du symbole _ (tiret bas). Cependant, un nom de variable ne peut pas commencer par un chiffre. En outre, une variable ne peut pas prendre le nom d’un mot réservé de Python, dont la liste se trouve en dessous.

À ces interdits s’ajoutent quelques conventions :

  1. Un nom de variable doit être représentatif de l’information qu’elle contient. Ainsi, on préférera appeler une variable total si elle contient le résultat d’une longue addition plutôt que t pour des questions de lisibilité et de compréhension, même si c’est plus long. Les performances du programme n’en seront pas affectées.

  2. Les noms de variables commencent par une lettre minuscule.

  3. On remplace les espaces par le symbole _.

  4. Les noms de constantes sont en lettres majuscules.

A titre d’exemple, les identificateurs suivants sont incorrects.

>>> I_am_inva!id = "À cause du !"
  File "<input>", line...
    I_am_inva!id = "À cause du !"
             ^
SyntaxError: invalid syntax
>>> I am invalid = "À cause des espaces"
  File "<input>", line...
    I am invalid = "À cause des espaces"
     ^
SyntaxError: invalid syntax
>>> 1_am_invalid = "Car je commence par un chiffre"
  File "<input>", line...
    1_am_invalid = "Car je commence par un chiffre"
    ^
SyntaxError: invalid syntax

En revanche, les identificateurs suivants sont corrects.

>>> IAmValid = "Mais je commence par une majuscule et je n'utilise pas le _"
>>> i_am_valid = "Et je suis conforme aux conventions !"
>>> I_AM_A_CONSTANT = "J'indique qu'il ne faut pas me modifier"

Note

Les noms de variables sont sensibles à la casse : my_variable = 5 n’est pas identique à my_Variable = 5.

2.3.2. Les mots réservés

Les mots réservés sont les mots-clés de Python, ceux qui ont une fonction prévue par le langage et ne peuvent donc pas être utilisés comme noms de variables. Ils sont énumérés ci-dessous. La plupart de ces mots réservés seront explorés en détail dans la suite du cours.

Mots réservés en Python

and       as        assert    break     class     continue  def       del
elif      else      except    finally   False     for       from      global
if        import    in        is        lambda    not       None      or
pass      raise     return    try       True      while     with      yield