embarrassing class question

Steven D'Aprano steve at REMOVE-THIS-cybersource.com.au
Fri Oct 22 04:02:28 EDT 2010


On Thu, 21 Oct 2010 12:12:34 -0700, Brendan wrote:

>> Because y.py has "from x import x" the x class from x.py is added to
>> the y.py namespace.
>>
>> ~Ethan~- Hide quoted text -
>>
>> - Show quoted text -
> 
> So what is usually done to prevent this? (In my case not wanting class x
> added to the y.py namespace)
> It seems sloppy.


(1) Don't import it in the first place.

(2) Import it with a different name, possibly private:

from module import x as _x

(3) Delete it when you're done:

from module import x
class Y(x):
    pass
del x

(4) Don't be so fussy and just accept that importing adds names to the 
namespace, as does any other assignment or class or function definition.




-- 
Steven



More information about the Python-list mailing list