IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Appel sans arguement d'une fonction avec argument


Sujet :

Python

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Points : 40
    Points
    40
    Par défaut Appel sans arguement d'une fonction avec argument
    Bonjour,

    Voici une fonction que j'ai extraite d'un script python qui provient
    d'un code de calcul scientifique libre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    def expand_derivatives(form):
     
        cell = form.cell()
        dim = None if cell is None else cell.geometric_dimension()
     
        def ad_routine(e):
            return forward_ad(e, dim)
     
        aa = ADApplyer(ad_routine)
        def _expand_derivatives(expression):
             expression = expand_compounds(expression, dim)
             return aa.visit(expression)
     
        return transform_integrands(form, _expand_derivatives)
    La méthode _expand_derivatives est appélée depuis la derniere ligne
    mais sans argument.
    Que devient expression dans la fonction ?
    Je crois bien que c'est a première fois que je vois ça et je ne sais pas
    trop ce qui se passe ici.
    Merci de bien vouloir m'expliquer.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par debutant100 Voir le message
    La méthode _expand_derivatives est appélée depuis la derniere ligne
    mais sans argument.
    Elle n'est pas appelée car par de () mais passé en paramètre à... transform_integrands avec form...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 60
    Points : 40
    Points
    40
    Par défaut
    Ah oui !!!

    Je suis stupidement resté coincé parce que je faisais des print pour
    voir par ou je passais mais juste dans la methode expand_derivatives.
    Et dans la définition de la methode
    transform_integrands(form, _expand_derivatives), presque juste
    apres l'appel, on un _expand_derivatives(form) !!
    Et avec mes print j'avais l'impression de faire l'appel a _expand_derivatives
    avant de rentrer dans transform_integrands !!


    Merci beaucoup !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/03/2014, 09h38
  2. creer une fonction avec arguments
    Par bigmousse69 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 09/04/2009, 10h10
  3. [A03] docmd.openmodule pour une fonction avec argument
    Par cbleas dans le forum VBA Access
    Réponses: 1
    Dernier message: 14/03/2009, 13h50
  4. [DOM] Onmouseover pour lancer une fonction avec arguments
    Par Trock dans le forum Général JavaScript
    Réponses: 11
    Dernier message: 01/06/2007, 13h31
  5. creer une fonction avec arguments
    Par niglo dans le forum ASP
    Réponses: 3
    Dernier message: 03/06/2005, 08h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo