Menu
Coddy logo textTech

Valeurs par défaut

Fait partie de la section Fundamentals du Journey Python de Coddy — leçon 48 sur 77.

Parfois, lorsque nous créons une fonction, nous voulons avoir certains arguments facultatifs, avec des valeurs par défaut prédéfinies.

Exemple :

def greet(name, greeting="Hello"):
    print(name, greeting)

Utilisation de la fonction avec seulement l'argument requis :

greet("John")
# Sortie : John Hello

Utilisation de la fonction avec les deux arguments :

greet("john", "welcome")
# Sortie : john welcome

Vous pouvez avoir plusieurs arguments par défaut :

def describe_person(name, age=25, city="Unknown"):
    print(f"{name} is {age} years old and lives in {city}")
describe_person("Alice")
# Utilise les deux valeurs par défaut

describe_person("Bob", 30)
# Utilise la ville par défaut

describe_person("Charlie", 35, "New York")
# N'utilise aucune valeur par défaut

Règle importante : Les arguments par défaut doivent être placés après les arguments sans valeur par défaut dans la définition de la fonction.

# Correct :
def greet(name, greeting="Hello"):
    print(f"{greeting}, {name}!")
# Incorrect :
def greet(greeting="Hello", name):
    print(f"{greeting}, {name}!")

Aide-mémoire

Arguments par défaut dans les fonctions :

def greet(name, greeting="Hello"):
    print(name, greeting)

greet("John")  # Output: John Hello
greet("John", "Welcome")  # Output: John Welcome

Arguments par défaut multiples :

def describe_person(name, age=25, city="Unknown"):
    print(f"{name} is {age} years old and lives in {city}")

describe_person("Alice")  # Utilise les deux valeurs par défaut
describe_person("Bob", 30)  # Utilise la ville par défaut
describe_person("Charlie", 35, "New York")  # N'utilise aucune valeur par défaut

Important : Les arguments par défaut doivent être placés après les arguments sans valeur par défaut dans la définition de la fonction.

# Correct :
def greet(name, greeting="Hello"):
    print(f"{greeting}, {name}!")

# Incorrect :
def greet(greeting="Hello", name):
    print(f"{greeting}, {name}!")

Essayez vous-même

Cette leçon ne comprend pas de défi de code.

quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Fundamentals