emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [O] Python Code Block error with header option :results output


From: Soapy Smith
Subject: Re: [O] Python Code Block error with header option :results output
Date: Sat, 01 Feb 2014 07:34:57 -0500

On Sat, 2014-02-01 at 07:56 +0100, Christian Moe wrote:
> > You should only use "return" like that in a python code block when you
> > have ":results value".
> 
> To expand briefly on that (since this can be perplexing): 
> 
> The need to use `return' at all when returning the value is a special
> quirk of Python code blocks, and does not apply to (any?) other languages.
> 
> As explained on Worg, with `:results value' (the default), 
> 
> "Internally, the value is obtained by wrapping the code in a function
> definition in the external language, and evaluating that
> function. Therefore, code should be written as if it were the body of
> such a function. In particular, note that Python does not automatically
> return a value from a function unless a return statement is present, and
> so a ‘return’ statement will usually be required in Python."
> 
> http://orgmode.org/manual/Results-of-evaluation.html
> 
> So when using `:results output', using `return' causes an error
> because there is no function to return anything from.
> 
> Yours,
> Christian 

Thank you Christian for the detailed explanation.  It is indeed
perplexing at first!

Regards,
Greg





reply via email to

[Prev in Thread] Current Thread [Next in Thread]