3 ms·
I was under the impression that using a class (with `__slots__` set) or a tuple is generally more performant than using dictionaries. At least, I assume that's
by burntsushi 13y ago
I was under the impression that using a class (with `__slots__` set) or a tuple is generally more performant than using dictionaries. At least, I assume that's why he didn't mention dictionaries.
- eevee 13y agoThe attributes of an object (and its class) are generally stored in a literal dictionary, so it's unlikely that a class will be more performant. What a class buys you is behavior and a semi-defined interface.
- burntsushi 13y agoUhh... Did you not see my parenthetical reference to `__slots__`? See this SO post[1] for more details. [1] - http://stackoverflow.com/questions/472000/python-slots http://stackoverflow.com/questions/472000/python-slots
- eevee 13y agoWhoops! I could've sworn that said "without", sorry :) Though I'm not sure `__slots__` actually saves any time, as it's really a space optimization. I've tried it before for hot code and even seen very slight (probably not significant) slowdowns.