python - Under what scenario non-data descriptor may NOT be overridden by instance disctionaries -


in section "invoking descriptors" of descriptor howto guide, says:

" data descriptors override instance dictionaries.

non-data descriptors may overridden instance dictionaries. "

and says:

" implementation works through precedence chain gives data descriptors priority on instance variables, instance variables priority on non-data descriptors, , assigns lowest priority __getattr__() if provided. "

then, non-data descriptor should always overridden instance dictionaries. why use "may be" here? how should understand statement?


Comments