NameError: name '__main__' is not defined

André andre.roberge at gmail.com
Sun Sep 13 22:26:46 EDT 2009


On Sep 13, 10:43 pm, Peng Yu <pengyu... at gmail.com> wrote:
> Hi,
>
> I try the following code. I don't quite understand why __main__ is not
> defined. Could somebody let me know what I am wrong about it?
>
> Regards,
> Peng
>
> $ cat test.py
> #!/usr/bin/env python
>
> if __main__ == '__main__' :
>   print "Hello World!\n"
> $ ./test.py
> Traceback (most recent call last):
>   File "./test.py", line 3, in <module>
>     if __main__ == '__main__' :
> NameError: name '__main__' is not defined

You wrote __main__ instead of __name__.  It should have been:

if __name__ == '__main__':
 ...

André



More information about the Python-list mailing list