2. fonction de base

"""Lanceur de dés."""

import random

def lancer_de(): """Simuler un lancer de dé et afficher son résultat.""" resultat = random.randint(1, 6) print(resultat)

print("Je vais lancer un dé deux fois.") print("Voici le premier résultat:") lancer_de() print("Voici le deuxième résultat:") lancer_de()

Quelques explications
  • import random permet d'utiliser la fonction randint(min, max) qui tire un nombre au hasard entre min et max
  • lancer_de() est une fonction (au sens informatique du terme)
  • lancer_de() peut être appelée depuis le programme principal ou depuis une autre fonction; l'appel se fait avec le nom de la fonction suivi de parenthèses
  • lors de la définition de la fonction, son bloc d'instructions est mis en mémoire mais pas encore exécuté; un nom (lancer_de) lui est associé, afin de pouvoir l'appeler par la suite
  • lorsque la fonction est exécutée, elle a accès à un espace de mémoire personnel, où sont stockées les variables locales de la fonction (dans cet exemple, resultat est une variable locale, qui cesse d'exister à la fin de l'exécution de la fonction)
  • dans Python, on aime bien laisser deux lignes vides avant et après la définition d'une fonction, pour bien mettre en évidence qu'il s'agit d'un "sous-programme" séparé; ailleurs, on ne laisse jamais plus qu'une ligne vide à la fois (excepté pour une construction de langage plus avancée: les classes)
Remarque
  • lancer_de (sans les parenthèses) est aussi une variable comme une autre, associant un nom à un contenu en mémoire; elle peut être manipulée comme les autres variables
Petit aparté sur la documentation du code
  • il est fortement recommandé de documenter une fonction avec un docstring au début de son bloc d'instructions; il s'agit d'une description, qui peut faire plusieurs lignes, entre triples guillemets; pour les fonctions, il est recommandé d’écrire le docstring à l'impératif ou à l'infinitif (comme si on "donnait un ordre" à la fonction)
  • il est aussi fortement recommandé d'utiliser un docstring pour documenter le module (fichier de code python), tout en haut du fichier; ce docstring-là fera plutôt office de "titre"