Prev: understanding the mro (long)
Next: Builtn super() function. How to use it with multiple inheritance? And why should I use it at all?
From: Dummey on 24 Jul 2010 02:33 I am having the hardest time trying to find documentation on proper use of the 'as' keyword (aside from . I initially thought that I would be allowed to do something such as: import shared.util as util The as statement seems to be causing a lot of ''module' object has no attribute'. Is it safe to assume that this is not the way to use it?
From: Terry Reedy on 24 Jul 2010 04:57 On 7/24/2010 2:33 AM, Dummey wrote: > I am having the hardest time trying to find documentation on proper > use of the 'as' keyword (aside from . I initially thought that I would > be allowed to do something such as: > > import shared.util as util > > The as statement seems to be causing a lot of ''module' object has no > attribute'. Is it safe to assume that this is not the way to use it? Give an example of real code raising an exception when importing from the stdlib and the corresponding error traceback in its entirety. -- Terry Jan Reedy
From: Steven D'Aprano on 24 Jul 2010 06:44 On Fri, 23 Jul 2010 23:33:55 -0700, Dummey wrote: > I am having the hardest time trying to find documentation on proper use > of the 'as' keyword (aside from . I initially thought that I would be > allowed to do something such as: > > import shared.util as util > > The as statement seems to be causing a lot of ''module' object has no > attribute'. Is it safe to assume that this is not the way to use it? It works for me. >>> import math as spam >>> spam <module 'math' from '/usr/lib/python2.5/lib-dynload/mathmodule.so'> >>> import email.mime.text as ham >>> ham <module 'email.mime.text' from '/usr/lib/python2.5/email/mime/text.pyc'> My guess is that you are trying to import individual objects from a module using the package dot notation: >>> import math.sin as eggs Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named sin -- Steven
From: Dummey on 24 Jul 2010 16:00
On Jul 24, 3:44 am, Steven D'Aprano <st...(a)REMOVE-THIS- cybersource.com.au> wrote: > On Fri, 23 Jul 2010 23:33:55 -0700, Dummey wrote: > > I am having the hardest time trying to find documentation on proper use > > of the 'as' keyword (aside from . I initially thought that I would be > > allowed to do something such as: > > > import shared.util as util > > > The as statement seems to be causing a lot of ''module' object has no > > attribute'. Is it safe to assume that this is not the way to use it? > > It works for me. > > >>> import math as spam > >>> spam > > <module 'math' from '/usr/lib/python2.5/lib-dynload/mathmodule.so'>>>> import email.mime.text as ham > >>> ham > > <module 'email.mime.text' from '/usr/lib/python2.5/email/mime/text.pyc'> > > My guess is that you are trying to import individual objects from a > module using the package dot notation: > > >>> import math.sin as eggs > > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ImportError: No module named sin > > -- > Steven I was being an idiot and doing a circular import. I erroneously thought it was the "as" part of the statement. For some reason, removing the "as" part of the statement remove/delayed the error from popping up which made me thought it was the culprit. Thanks for the help. |