calling functions style question

Thomas Nelson thn at mail.utexas.edu
Tue Jun 6 11:28:44 EDT 2006


The difference becomes clear when you import your program into another
program (or the command line python editor).  __name__!='__main__' when
you import, so the functions will not be called if they're inside the
block.  This is why you see this block so often at the end of scripts;
so that the script runs its main functions when called as a standalone
program, but you can also import the code and do something with it
without setting off those functions.

THN

Brian wrote:
> I just have a basic style question here.  Suppose you have the program:
>
> def foo1():
>     do something
>
> def foo2()
>     do something else
>
> Assume that you want to call these functions at execution.  Is it more
> proper to call them directly like:
>
> foo1()
> foo2()
>
> or in an if __name__ == "__main__": ?
>
> Both will execute when the script is called directly, I was just
> wondering if there is a preference, and what the pros and cons to each
> method were.
> 
> Thanks,
> Brian




More information about the Python-list mailing list