Par syntaxe, comprenez : bonne façon d'écrire.
En Python tous les blocs de structure ont une déclaration avec : en fin de ligne.
De plus, en Python, on n'écrit pas fin ou end pour indiquer la fin d'un bloc. Le début du bloc est annoncé par : qui est forcément suivi d'une indentation marge à gauche. C'est l'indentation qui permet de savoir quand le bloc se termine.
Vous pouvez constater que cela produit une écriture allégée et lisible. C'est une des qualités de Python.
Les structures à suivre font référence à des conditions. Ces conditions consistent à tester si tel quantité est égale, différente ou supérieure à telle autre. On a donc besoin de symboles pour exprimer ces tests.
== : égal à. Exemple x == 17.!= : différent de. Exemple x != 17.< : strictement inférieur à. Exemple x < 17.<= : inférieur ou égal à. Exemple x <= 17.> : strictement supérieur à. Exemple x > 17.>= : supérieur ou égal à. Exemple x >= 17.
SI condition ALORS
instruction 1
instruction 2
...
FIN
suite...
if condition:
instruction 1
instruction 2
...
suite...
Il n'y a pas de contraintes pour l'indentation : 1 espace, 2, 3… Vous ferez l'effort de toujours mettre 4 espaces pour un code plus propre.
SI condition ALORS
instruction 1
instruction 2
...
SINON
instruction a
instruction b
...
FIN
suite...
if condition:
instruction 1
instruction 2
...
else:
instruction a
instruction b
...
suite...
TANT QUE condition RÉPÉTER
instruction 1
instruction 2
...
FIN
suite...
while condition:
instruction 1
instruction 2
...
suite...
POUR CHAQUE élément DANS ensemble FAIRE
instruction 1
instruction 2
...
FIN
suite...
for élément in ensemble:
instruction 1
instruction 2
...
suite...
Python permet l'utilisation d'accents. élément est donc permis. Mais en général on préfère éviter et il est aussi courant d'utiliser des mots en anglais, donc sans accents.
Vous pouvez remarquer que dans l'exemple ci-dessus, les é ne sont pas colorés comme ils devraient. C'est un problème que l'on rencontre dans les environnements de développement Python : Si on utilise des accents pour certains noms, la coloration syntaxique ne fonctionne pas bien. Pourtant, le programme est juste et fonctionnera correctement.
Il n'y a pas de structure exprès pour RÉPÉTER n FOIS mais on peut y arriver avec la boucle for.
RÉPÉTER n FOIS
instruction 1
instruction 2
...
FIN
suite...
for i in range(n):
instruction 1
instruction 2
...
suite...
range est un outil qui reviendra souvent. Il permet de créer une sorte d'ensemble : range(n) crée un ensemble {0, 1, 2... n-1}. La variable i est utilisée comme un simple compteur.
C'est la forme classique de la boucle POUR et dans beaucoup de langages, ce POUR se traduirait par un for. Mais le for de Python en fait un POUR CHAQUE traduit par foreach dans certains langages.
POUR i ALLANT DE a À b FAIRE
instruction 1
instruction 2
...
FIN
suite...
for i in range(a,b+1):
instruction 1
instruction 2
...
suite...
range(a,b+1) crée un ensemble {a, a+1, ... b}
En Python, quand une commande exprime l'idée “de a à b”, b est exclu. Ainsi range(a,b) énumère les entiers de a à b, b exclu. Si on veut inclure b, il faut écrire range(a,b+1).