getattr () versus wyszukiwanie dict, które jest szybsze?
Nieco hałaśliwe pytanie dotyczące najlepszych praktyk. Dynamicznie sprawdzam wartości atrybutów obiektu za pomocąobject.__dict__[some_key]
jako kwestia przyzwyczajenia. Teraz zastanawiam się, co jest lepsze / szybsze: mój obecny zwyczaj lubgetattr(object,some_key)
. Jeśli jeden jest lepszy, dlaczego?
>>> class SomeObject:
... pass
...
>>> so = SomeObject()
>>> so.name = 'an_object'
>>> getattr(so,'name')
'an_object'
>>> so.__dict__['name']
'an_object'