Fonction lambda sous python
Répondre à la discussion
Affichage des résultats 1 à 7 sur 7

Fonction lambda sous python



  1. #1
    kaderben

    Fonction lambda sous python


    ------

    Bonjour,
    Le code ci-dessous calcule l'aire sous une courbe par méthode monté carlo.
    L'appel de la fonction fonc(x**2,1000,2,3) rend une erreur :soit 'x' non définie soit 'a' non défini et ainsi de suite.
    Comment coder la fonction lambda ?
    Code:
    from random import *
    from math import*
    import math
    def fonc(expression,n,a,b):
        s=0
        for i in range(0,n):
            x=random()*a
            y=random()*b
            if y<=expression(x):
                s=s+1
    print("s=",a*b*s/n)
    
    fonc(lambda x:(x**2,1000,2,3)
    Merci d'avance.

    -----
    Dernière modification par JPL ; 29/02/2024 à 16h34. Motif: ajout de la balise Code pour garder l’indentation

  2. #2
    umfred

    Re : Fonction lambda sous python

    Tu as testé la ligne que tu proposes à la fin ?

  3. #3
    kaderben

    Re : Fonction lambda sous python

    A partir de la console, je tape: fonc(x**2,1000,2,3) et ça marche pas.

  4. #4
    umfred

    Re : Fonction lambda sous python

    je parle de ta dernière ligne ............
    Code:
    fonc(lambda x : x**2,1000,2,3)


    PS: et quand tu insères du code, surtout en python où l'indentation est essentiel, utilises les balises prévues pour le code (bouton # du mode avancé, ou [ code ] .....[/ code ] (sans les espaces); ça rendra le code plus lisible

  5. A voir en vidéo sur Futura
  6. #5
    kaderben

    Re : Fonction lambda sous python

    Oui, je fais attention à l'indentation si non ça bloque.
    Tu as testé la ligne que tu proposes à la fin ?
    Comment tester la ligne: fonc(lambda x : x**2,1000,2,3) ?
    Je pense que je ne définie pas bien la fonction lambda, et c'est pour ça que je demande de l'aide.

  7. #6
    pm42

    Re : Fonction lambda sous python

    Citation Envoyé par kaderben Voir le message
    A partir de la console, je tape: fonc(x**2,1000,2,3) et ça marche pas.
    Outre ce que vient de dire umfred sur les balises QUOTE, que ça ne marche pas est normal : tu ne passes pas une lambda en écrivant comme ça mais une expression x**2 avec une variable x non définie.

  8. #7
    umfred

    Re : Fonction lambda sous python

    Citation Envoyé par kaderben Voir le message
    Oui, je fais attention à l'indentation si non ça bloque.

    Comment tester la ligne: fonc(lambda x : x**2,1000,2,3) ?
    Je pense que je ne définie pas bien la fonction lambda, et c'est pour ça que je demande de l'aide.
    Euh comment tu sais que ton code ne marche pas ? ... pareil, tu copies la ligne d'instruction dans ton script/interpréteur python ...

    Sinon, je pense qu'il s'agit de la même personne que sur ce sujet de developpez.net https://www.developpez.net/forums/d2...n-sous-python/
    Sujet sur lequel la réponse a déjà été donné aussi en fait.

Discussions similaires

  1. Quel est le sous-jacent fort de la théorie de la Constante Lambda ?
    Par Daniel1958 dans le forum Discussions libres
    Réponses: 14
    Dernier message: 10/07/2023, 07h51
  2. communication i2c via un ADC sous python
    Par docEmmettBrown dans le forum Électronique
    Réponses: 0
    Dernier message: 05/05/2015, 15h07
  3. Exo infernal sous Python 3.4
    Par inviteef177ef5 dans le forum Programmation et langages, Algorithmique
    Réponses: 12
    Dernier message: 27/04/2015, 20h50
  4. Programmation sous python
    Par inviteb8a16c2c dans le forum Programmation et langages, Algorithmique
    Réponses: 45
    Dernier message: 15/05/2013, 12h13
  5. Python sous Mac
    Par inviteb31e526f dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 01/09/2011, 20h02