On Mon, Aug 23, 2010 at 2:22 PM, Yury Selivanov <yseliva...@gmail.com> wrote:
> As I understand the only possible way to make 'hasattr' work as it name 
> indicates (i.e. just check if attribute exists, not run it), is to add 
> another magic method(s?) to the existing __getattr__ and __getattribute__ 
> which will tell whether attribute exists or not, and by default this method 
> would mimic current 'hasattr' behaviour.

You nailed it. At the lowest level (either in C or in Python) there is
no way to check for an attribute's presence without getting its value.
This has so far been fundamental, and everything else is just
appearances.

I propose that this is good enough and that we should at this point
not try to invent another protocol, just decide whether hasattr() can
be fixed (and leaving PyObject_HasAttr*() alone).

-- 
--Guido van Rossum (python.org/~guido)
_______________________________________________
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

Reply via email to