recall function definition from shell
Peter Otten
__peter__ at web.de
Tue May 18 15:08:33 EDT 2010
superpollo wrote:
> Patrick Maupin ha scritto:
>> On May 18, 1:41 pm, superpollo <ute... at esempio.net> wrote:
>>> Patrick Maupin ha scritto:
>>>
>>>
>>>
>>>> On May 18, 12:31 pm, superpollo <ute... at esempio.net> wrote:
>>>>> >>> def myfun():
>>>>> ... return "WOW"
>>>>> ...
>>>>> >>> myfun()
>>>>> 'WOW'
>>>>> now, i would like to "list" the funcion definition, something like
>>>>> this:
>>>>> >>> myfun.somethinglikethis()
>>>>> def myfun():
>>>>> return "WOW"
>>>>> is there something like this around?
>>>>> bye
>>>> Sure, just give it a docstring and then you can call help on it:
>>>>>>> def myfun():
>>>> ... ''' myfun returns "WOW" when called.
>>>> ... This is just a Python __doc__ string
>>>> ... '''
>>>> ... return "WOW"
>>>> ...
>>>>>>> help(myfun)
>>>> Regards,
>>>> Pat
>>> mmm... thanks but not quite what i meant :-(
>>>
>>> bye
>>
>> Well, I don't think Python remembers exactly how you typed it in
>
> yes python does not, but maybe the *shell* does, or so i thought. i just
> wanted to dump the code for the function in a file, after i tested in
> the shell...
You could try ipython:
$ ipython
Python 2.6.4 (r264:75706, Dec 7 2009, 18:43:55)
Type "copyright", "credits" or "license" for more information.
IPython 0.10 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help -> Python's own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [1]: def f():
...: return 42
...:
In [2]: f()
Out[2]: 42
In [3]: %save tmp.py 1
The following commands were written to file `tmp.py`:
def f():
return 42
In [4]:
Do you really want to exit ([y]/n)?
$ cat tmp.py
def f():
return 42
$
Peter
More information about the Python-list
mailing list