On Fri, Jul 30, 2010 at 2:46 PM, Daniel Waterworth <da.waterwo...@gmail.com> wrote: .. > Having thought it through thoroughly, my preference is for a warning. > > I don't think it's a good practise to import the __main__ module by > filename, as renaming the file will break the code. I got stung after, > having dropped into a python interpreter shell and imported the > module, I executed a function that uses isinstance. > > If a warning showed up after importing the module, explaining the > problem and suggested that I use __import__('__main__') instead, I > would have saved myself a fair amount of time debugging code. This is > another case of "Explicit is better than implicit.".
You can easily disallow importing __main__ module by filename by simply giving your script a name that does not end with .py or by using say '-' character in the filename. No change to python itself is needed. _______________________________________________ Python-Dev mailing list Python-Dev@python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com