You should define the function first and then call it.<div><br></div><div><br> def something(i):<br>     return i<br></div><div><br></div><div>a = something(5)<br></div><div><br></div><div>If you want a reference to the function somewhere else you can do this:</div>
<div><br></div><div>global alias = something</div><div><br></div><div>print alias(i)</div><div><br></div><div><br><br><div class="gmail_quote">On Tue, Jun 12, 2012 at 1:53 PM, Julio Sergio <span dir="ltr"><<a href="mailto:juliosergio@gmail.com" target="_blank">juliosergio@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I'm puzzled with the following example, which is intended to be a part of a<br>
module, say "tst.py":<br>
<br>
  a = something(5)<br>
<br>
  def something(i):<br>
      return i<br>
<br>
<br>
<br>
When I try:<br>
<br>
->>> import tst<br>
<br>
The interpreter cries out:<br>
<br>
Traceback (most recent call last):<br>
  File "<stdin>", line 1, in <module><br>
  File "tst.py", line 11, in <module><br>
    a = something(5)<br>
NameError: name 'something' is not defined<br>
<br>
I know that changing the order of the definitions will work, however there are<br>
situations in which referring to an identifier before it is defined is<br>
necessary, e.g., in crossed recursion.<br>
<br>
So I modified my module:<br>
<br>
  global something<br>
<br>
  a = something(5)<br>
<br>
<br>
  def something(i):<br>
      return i<br>
<br>
<br>
And this was the answer I got from the interpreter:<br>
<br>
->>> import tst<br>
<br>
Traceback (most recent call last):<br>
  File "<stdin>", line 1, in <module><br>
  File "tst.py", line 12, in <module><br>
    a = something(5)<br>
NameError: global name 'something' is not defined<br>
<br>
<br>
Do you have any comments?<br>
<br>
Thanks,<br>
<br>
--Sergio.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
<br>
<br>
--<br>
<a href="http://mail.python.org/mailman/listinfo/python-list" target="_blank">http://mail.python.org/mailman/listinfo/python-list</a><br>
</font></span></blockquote></div><br></div>