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.
- Si on essaie de s'en servir comme un identifiant une erreur est levée.
- En codant en français usuel, peu de mots sont en commun avec cette liste.
- Il n'y a donc que 6 mots à retenir :
as
,continue
,global
,if
,import
etor
.
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,
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
etfrom
: 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.
-
Le croisillon
#
n'est pas un dièse♯
. ↩