Les Fonctions

Reprenons là où nous en étions avec les variables.

def ma_fonction(x):
    return x + 1

def trouver_volume(longueur=1, largeur=1, profondeur=1):
        print("Longueur = " + str(longueur))
        print("Largeur = " + str(largeur))
        print("Profondeur = " + str(profondeur))
        return longueur * largeur * profondeur

trouver_volume(1, 2, 3)
trouver_volume(longueur=5, profondeur=2, largeur=4)
trouver_volume(2, profondeur=3, largeur=4)
  • Certaines tâches nécessitent d’être remplies plusieurs fois dans un programme.
  • Plutôt que de réécrire le même code à plusieurs endroits, une fonction peut être définie en utilisant le mot-clé def.
  • Les définitions de fonctions peuvent inclure des paramètres, fournissant des données d’entrée à la fonction.

Appeler une fonction: allumerLumiere() en écrivant le nom de la fonction suivi de parenthèses

Définir une fonction: mot-clé def suivi du nom de la fonction, de parenthèses et d’un deux-points

  • Le corps de la fonction, ou le code de ce que la fonction fera réellement, vient après le deux-points sur une ligne indentée

Paramètres de fonction:

  • Parfois, les fonctions nécessitent des entrées pour fournir des données à leur code. Ces entrées sont définies à l’aide de paramètres.
  • Les paramètres sont des variables définies dans la définition de la fonction.
  • Ils reçoivent les valeurs qui ont été passées en tant qu’arguments lorsque la fonction a été appelée, ailleurs dans le code.

Arguments de fonction:

  • Les paramètres en python sont des variables— des espaces réservés pour les valeurs réelles dont la fonction a besoin
  • Lorsque la fonction est appelée, ces valeurs sont passées en tant qu’arguments.
import time

import board
import neopixel

pixels = neopixel.NeoPixel(board.NEOPIXEL, 10, brightness=.1)

# Couleurs
NOIR = (0, 0, 0)
ROUGE = (255, 0, 0)
ROSE = (255, 100, 120)
ORANGE = (255, 100, 0)
JAUNE = (255, 255, 0)
VERT = (0, 255, 0)
CYAN = (0, 255, 255)
VIOLET = (255, 0, 255)
BLEU = (0, 0, 255)
BLEU_CLAIR = (80, 200, 175)
BLANC = (255, 255, 255)

couleurs = [
        ROSE,
        ROUGE,
        ORANGE,
        JAUNE,
        VERT,
        CYAN,
        VIOLET,
        BLEU,
        BLEU_CLAIR,
        BLANC
]

pixels.fill(NOIR)
pixels.show()

while True:
        for i in range(len(pixels)):
                pixels[i] = couleurs[i]
                time.sleep(.05)
        time.sleep(1)

Et faire une fonction du comportement:

def cercleSimple(temps):
        # Couleurs
        ROUGE = (255, 0, 0)
        ROSE = (255, 100, 120)
        ORANGE = (255, 100, 0)
        JAUNE = (255, 255, 0)
        VERT = (0, 255, 0)
        CYAN = (0, 255, 255)
        VIOLET = (255, 0, 255)
        BLEU = (0, 0, 255)
        BLEU_CLAIR = (80, 200, 175)
        BLANC = (255, 255, 255)

        couleurs = [
                ROSE,
                ROUGE,
                ORANGE,
                JAUNE,
                VERT,
                CYAN,
                VIOLET,
                BLEU,
                BLEU_CLAIR,
                BLANC
        ]

        for i in range(len(pixels)):
                pixels[i] = couleurs[i]
                time.sleep(.05)
        time.sleep(1)

Comment utiliser:

# CircuitPlaygroundExpress_NeoPixel
# https://learn.adafruit.com/adafruit-circuit-playground-express/circuitpython-neopixel

import time

import board
import neopixel

pixels = neopixel.NeoPixel(board.NEOPIXEL, 10, brightness=.1)
pixels.fill((0, 0, 0))
pixels.show()

# choisir quelles démos jouer
# 1 signifie jouer, 0 signifie ne pas jouer!
demoCercleSimple = 1

def cercleSimple(temps):
        # Couleurs
        ROUGE = (255, 0, 0)
        ROSE = (255, 100, 120)
        ORANGE = (255, 100, 0)
        JAUNE = (255, 255, 0)
        VERT = (0, 255, 0)
        CYAN = (0, 255, 255)
        VIOLET = (255, 0, 255)
        BLEU = (0, 0, 255)
        BLEU_CLAIR = (80, 200, 175)
        BLANC = (255, 255, 255)

        couleurs = [
                ROSE,
                ROUGE,
                ORANGE,
                JAUNE,
                VERT,
                CYAN,
                VIOLET,
                BLEU,
                BLEU_CLAIR,
                BLANC
        ]

        for i in range(len(pixels)):
                pixels[i] = couleurs[i]
                time.sleep(temps)
        time.sleep(1)


while True:
        if demoCercleSimple:
                print('Démo Cercle Simple')
                cercleSimple(.05)
        pixels.fill((0, 0, 0))
Thanks! We hope you found what you are looking for. Please feel free to contribute via Github.