Grant Edwards wrote: > On 2012-10-09, Peter Otten <__pete...@web.de> wrote: > >> Welcome to python -- this is a trap every newbie falls into ;) >> >> Seriously, you shouldn't use the main script as a library; > > There must be something wrong with me. It never even occurred to me > to try to import a file from within that same file.
It is typically done in two steps: (1) Write module x, use it in module y. (2) For convenience add "if __name__ == '__main__'" and import module y. Hilarity ensues. > I don't think I've ever even heard of that before... As I was poking fun at Michele who really is an expert and likely knows more about Python than I do I may have exaggerated a bit ;) But it does come up, see "Singleton implementation problems" http://mail.python.org/pipermail/python-list/2008-July/470770.html "Dynamically declared shared constant/variable imported twice problem" http://mail.python.org/pipermail/python-list/2009-May/535619.html There are more, but I don't know a convenient way to find the posts. Related problems with reload() or paths into a package occur even more frequently. -- http://mail.python.org/mailman/listinfo/python-list