[Python] Fonction à paramètres
Discutez d'informatique ici !
-
Charmander
- Membre Naturel
- Messages: 90
- Enregistré le: 13 Oct 2013, 17:22
-
par Charmander » 20 Oct 2013, 22:19
Bonjour,
Je débute sur Python et je cherche à savoir comment écrire une fonction qui définit une fonction à partir d'un paramètre. Dans le cadre de mon exercice, je cherche à définir une fonction qui définit et renvoie une fonction polymiale de coefficients successifs les éléments d'une liste.
La manipulation des coefs n'est pas difficile en soi, mais c'est la syntaxe de "écrire une fonction qui définit et renvoie une autre fonction" qui me bloque. Sauriez vous comment faire ? Merci d'avance
-
SaintAmand
- Membre Rationnel
- Messages: 901
- Enregistré le: 17 Oct 2011, 12:47
-
par SaintAmand » 20 Oct 2013, 22:42
Charmander a écrit:Je débute sur Python
Je soupçonne que tu n'as aucune documentation sous la main, n'est-ce pas ? Pour des livres et autres tutos gratuits regarde ici
https://github.com/vhf/free-programming-booksPour quelque chose de plus intéractif pour apprendre rapidement les concepts de base, tu peux essayer
Codecademy.
Dans le cadre de mon exercice, je cherche à définir une fonction qui définit et renvoie une fonction polymiale de coefficients successifs les éléments d'une liste.
Pas besoin d'écrire une fonction qui renvoie une fonction (au sens de python). Une fonction polynomiale est entièrement définie par la liste de ses coefficients.
-
Charmander
- Membre Naturel
- Messages: 90
- Enregistré le: 13 Oct 2013, 17:22
-
par Charmander » 20 Oct 2013, 23:09
SaintAmand a écrit:Pas besoin d'écrire une fonction qui renvoie une fonction (au sens de python). Une fonction polynomiale est entièrement définie par la liste de ses coefficients.
Je ne comprends pas trop ce que tu veux dire par-là... La consigne de mon exercice, mot pour mot, est:
"Ecrire une fonction fonctionPolynomiale(P) qui définit et renvoie la fonction polynomiale f:x->P(x)"
Je ne dois pas écrire une fonction de variable P(une liste) qui définit la fonction poynomiale en question?
-
fatal_error
- Modérateur
- Messages: 6610
- Enregistré le: 22 Nov 2007, 13:00
-
par fatal_error » 21 Oct 2013, 00:07
d'apres ce que je comprends il s'agirait de qqch du style
- Code: Tout sélectionner
>>> def getPol(L):
... def P(x):
... return L[0]+L[1]*x;
... return P
...
>>> f=getPol([3,4])
>>> f(5)
23
sauf que il faut que tu fasses un peu plus que la fonction linéaire!
où L est une liste de coefficients définissant le polynome dont tu veux récupérer la fonction associée
la vie est une fête
-
Charmander
- Membre Naturel
- Messages: 90
- Enregistré le: 13 Oct 2013, 17:22
-
par Charmander » 21 Oct 2013, 09:26
Voilà, c'est exactement ce que je cherche, et ça marche ! Il manque juste un return dans la définition de P(x) car sinon si on entre 'f(5)" par exemple f ne retourne rien
Merci beaucoup! :)
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 14 invités