Aller au contenu principal
🔒 Mode aperçu. Les quinze premières leçons Foundations sont gratuites ; celle-ci est Pro. Démarrez un trial de 7 jours pour débloquer l'éditeur, les conseils AI et le reste du programme. Carte requise, annulez à tout moment dans Dashboard.Démarrer le trial de 7 jours →
← CoursSenior Deep-DivesModule 6 · FAANG-2026 deep divesSentinel object — distinguishing 'not passed' from 'passed None'predict115 / 161
+150 XP
Tâche
📝 **Tâche :** Prédisez le résultat exact. \`merge\` distingue trois cas via \`is _MISSING\` et \`is None\`. Quatre appels : pas de remplacement, aucun explicite, valeur explicite, sentinelle explicite. 📋 Implémentez la fonction ci-dessus. Les tests s'exécutent automatiquement. 💡 **Indice :** Relisez la théorie si vous êtes bloqué.
Prédis la sortie

Lis le code attentivement

_MISSING = object()


def merge(base, override=_MISSING):
    if override is _MISSING:
        return f"no override (base={base})"
    if override is None:
        return f"explicit None (base={base})"
    return f"override={override} (base={base})"


print(merge(1))
print(merge(1, None))
print(merge(1, 99))
print(merge(1, _MISSING))

Que va afficher le programme ? Écris ici :

💬 Discussion

Soyez le premier à poser une question ou partager une astuce.
Connectez-vous pour rejoindre la discussion. La lecture est gratuite.
Chargement de la discussion…