Forum de mathématiques - Bibm@th.net
Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
- Accueil
- » Programmation
- » fonction avec contrainte
- » Répondre
Répondre
Résumé de la discussion (messages les plus récents en premier)
- Matou
- 22-09-2021 12:37:06
Bonjour,
ton décorateur sert à remplacer une fonction par un autre objet (en général une autre fonction).
Il faut donc que tu définisses une nouvelle fonction dans ton def decorator_check_max_int(func) et que tu retournes cette nouvelle fonction :
maxsize = 1000
def decorator_check_max_int(func):
def new_func(a, b):
ret = func(a, b)
if ret > maxsize :
return None
else :
return ret
return new_func
@decorator_check_max_int
def add(a, b):
return a + b
a = int(input("a = "))
b = int(input("b = "))
print(add(a,b))
Ceci marche en python 2.7.13
Bonne journée
Matou
- brics
- 26-08-2021 11:27:05
Bonjour,
Je souhaite écrire decorator_check_max_int pour forcer la fonction "add" à ne pas renvoyer de valeurs supérieures à maxsize ( importer du module sys)
quelqu'un peut m'aider?
if add(a,b) > maxsize :
return None
@decorator_check_max_int
def add(a, b):
return a + b