special method in module

Jan Procházka prochazka at u-turnmediagroup.com
Wed Nov 16 08:05:31 EST 2005


Thanks, probably you are right, hacking python in my situation is not 
neccessary...

>Jan Procházka wrote:
>
>  
>
>>can have modules special methods?
>>    
>>
>
>no, but you can replace the module object with something that can have
>special methods:
>
>$ more module.py
>import sys
>
>class Module:
>    def __getitem__(self, value):
>        return value
>
>sys.modules[__name__] = Module()
>
>$ python
>  
>
>>>>import module
>>>>module[10]
>>>>        
>>>>
>10
>
>as with any other introspection hack, you should only use this if you have
>very good reasons.
>
>(saving some typing in import statements is not a good reason; creating a
>module that's a transparent proxy to some external system might be.  but
>in such cases, you should stick to attribute hooks/descriptors, and make
>sure that code that uses your proxy looks like code that uses an ordinary
>module.  Python always works better if you use it to write Python code...)
>
></F> 
>
>
>
>  
>




More information about the Python-list mailing list