Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.lang.python > #3241

Re: afficher la définition d'une fonction à partir de la console

From Benoit Izac <use.reply.to@INVALID.ADDRESS>
Newsgroups fr.comp.lang.python
Subject Re: afficher la définition d'une fonction à partir de la console
Date 2019-09-06 19:25 +0200
Message-ID <87tv9puyju.fsf@izac.org> (permalink)
References <5d6c1c0e$0$3541$426a74cc@news.free.fr> <5d6cd4fc$0$20318$426a74cc@news.free.fr> <5d6e0fbd$0$3528$426a74cc@news.free.fr> <5d71fffd$0$15180$426a74cc@news.free.fr>

Show all headers | View raw


Bonjour,

Le 06/09/2019 à 08:43, Nicolas a écrit dans le message
<5d71fffd$0$15180$426a74cc@news.free.fr> :

>> et parfois, mes élèves s'emmêlent les pinceaux et croient utiliser
>> une fonction alors que c'en est une autre... surtout avec jupyter
>> qui permet de réexécuter les cadres de code passés.
>>
>> Du coup, lorsqu'ils m'appellent au secours, ils ont parfois un
>> "programme" qui semblent bon mais qui ne marche pas car l'erreur est
>> dans une fonction qu'ils appellent et qui n'est pas celle qu'ils
>> croient.
>>
>> Et quand ils me disent : "Mais si m'sieur, j'ai bien écrit ma
>> fonction" en me montrant le cadre de code qu'ils ont changé mais pas
>> exécuté, j'aimerai leur montrer ce que Python connait vraiment.
>
> D'après cette réponse
> (https://stackoverflow.com/questions/427453/how-can-i-get-the-source-code-of-a-python-function/427533#427533),
> il semblerait que les lignes suivantes fonctionnent dans jupyter :
>
> import inspect
> print(inspect.getsource(fonction))
>
> A vérifier...
> Je n'utilise pas jupyter, donc, je ne peux pas vérifier ;)

Ce n'est pas spécifique à Jupyter et tu as lu un peu vite :

| If the function is from a source file available on the filesystem,
| [...]
| But I believe that if the function is compiled from a string, stream
| or imported from a compiled file, then you cannot retrieve its source
| code.

Lorsque le code est tapé dans la console, le fichier source n'est pas
disponible donc ça ne fonctionne pas. Ça ne marche que ce que tu vas
trouver dans /usr/lib/pythonX.X/.

-- 
Benoit Izac

Back to fr.comp.lang.python | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

afficher la définition d'une fonction à partir de la console Fabrice <professeur.leclercq@gmail.com> - 2019-09-01 21:29 +0200
  Re: afficher la définition d'une fonction à partir de la console yves <yves@free.invalid> - 2019-09-02 08:38 +0000
    Re: afficher la définition d'une fonction à partir de la console Fabrice <professeur.leclercq@gmail.com> - 2019-09-03 09:01 +0200
      Re: afficher la définition d'une fonction à partir de la console Becaree <pierrelouis.chevallier60@gmail.com> - 2019-09-03 11:56 -0700
      Re: afficher la définition d'une fonction à partir de la console Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2019-09-03 21:28 +0200
      Re: afficher la définition d'une fonction à partir de la console Nicolas <nicolasp@aaton.com> - 2019-09-06 08:43 +0200
        Re: afficher la définition d'une fonction à partir de la console Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2019-09-06 19:25 +0200
          Re: afficher la définition d'une fonction à partir de la console Fabrice <professeur.leclercq@gmail.com> - 2019-09-07 18:56 +0200
            Re: afficher la définition d'une fonction à partir de la console Nicolas <nicolasp@aaton.com> - 2019-09-09 08:32 +0200
          Re: afficher la définition d'une fonction à partir de la console Nicolas <nicolasp@aaton.com> - 2019-09-09 08:32 +0200
            Re: afficher la définition d'une fonction à partir de la console Benoit Izac <use.reply.to@INVALID.ADDRESS> - 2019-09-09 19:06 +0200

csiph-web