Aller au contenu

Variable⚓︎

À savoir⚓︎

Le principe

  • On peut désigner des résultats par des variables pour les réutiliser plus tard.
  • Attention, on ne met pas une valeur dans une variable, c'est faux en Python. On affecte un résultat à une variable.
  • En maths, on n'utilise souvent qu'une lettre, en programmation on préfère utiliser des variables avec un nom le plus explicite possible.

Comment choisir son nom de variable ?

  • La règle : N'utiliser que les caractères : a→z, A→Z, 0→9 et _
  • Tolérance : les lettres accentuées sont tolérées pour un programme en français ; c'est plus lisible.
  • Obligatoire : Ne pas débuter par un chiffre.
  • Conseils :
    • choisir_un_nom_de_variable_lisible
    • NePaschoisirUnNomDeVariablePeuLisible
    • nepaschoisirunnomdevariableillisible
    • JE_SUIS_UNE_JOLIE_CONSTANTE
  • Exemples : nb_triangles, x_0 sont valides et lisibles.
  • Conseil : on limitera les abréviations à
    • nb pour « nombre »,
    • id pour « indice »,

Mots réservés de Python3

Il y a 35 mots réservés (dont deux récents) qui ne peuvent pas être utilisés pour des variables.

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

Remarques

Seuls False, None et True commencent ici avec une majuscule.

Faut-il connaître ces 35 noms par chœur ? Non, seulement 6.

  1. Si on essaie de s'en servir comme un identifiant une erreur est levée.
  2. En codant en français usuel, peu de mots sont en commun avec cette liste.
  3. Il n'y a donc que 6 mots à retenir : as, continue, global, if, import et or.

Exemples⚓︎

>>> prix_unitaire = 125 # en €
>>> quantité = 12
>>> prix_total = quantité * prix_unitaire
>>> prix_total
1500

Pourquoi un seul résultat affiché ?

Dans la console, une affectation ne produit pas d'affichage.

La dernière instruction est un calcul simple évalué, et

  • la console affiche le résultat d'une évaluation, pas d'une affectation.
>>> platine = 32_005  # € / kg

Les commentaires avec #

On place un commentaire au moins deux espaces après le code,

  • ensuite un croisillon1 # et une espace2,
  • enfin son court commentaire.

Il sera ignoré par Python, mais il pourra être utile au lecteur.

Il est préférable que le code soit lisible sans.

Pour les unités, c'est une bonne pratique.

On évite de faire de longues lignes ; 79 caractères au maximum, c'est mieux.

>>> or = 47_300  # € / kg
  File "<stdin>", line 1
    or = 47_300  # € / kg
    ^
SyntaxError: invalid syntax

SyntaxError

or est un mot réservé, on ne peut pas l'utiliser comme identifiant.

SyntaxError signifie « erreur de syntaxe », et la flèche indique l'origine.

⚠ attention, parfois l'origine de l'erreur est sur la ligne précédente, par exemple, quand il manque une parenthèse.

En savoir plus⚓︎

Nous allons bientôt découvrir

  • def pour définir une fonction.
  • return pour une valeur que la fonction renvoie.
  • if, elif, else : pour les structures conditionnelles.
  • for, in, while : pour créer des boucles.
  • and, or, not : opérateurs sur les booléens : et, ou, non.
  • import et from : pour importer à partir d'un module.
  • in : pour un test d'appartenance.
  • assert : pour le débogage facile ; on vérifie un état.
  • raise : pour provoquer volontairement une erreur contrôlée.

Utilisation avancée

On ne recommande pas leur utilisation hors NSI.

  • is : aussi pour test d'identité entre objets.
  • None : pour une donnée 'sans valeur' ; zéro étant un entier possédant une valeur.
  • del : pour détruire (delete) une variable.
  • lambda : pour définir une fonction anonyme.
  • pass : une instruction qui ne fait rien.
  • break, continue : pour les boucles plus complexes.
  • try, except : pour la gestion des erreurs.
  • with, as : pour la lecture de module ou de fichier.
  • class : pour la programmation orientée objet (POO).
  • global, nonlocal : pour modifier la portée d'une variable.
  • yield : pour la construction d'itérateur.

  1. Le croisillon # n'est pas un dièse

  2. L'espace est féminin en typographie.