3 ms·
Where in typeobject.c? I looked, and there's a lot of stuff related to slots, but I don't see any caching. Also I did a speed test on my machine. My results
by chubot 9y ago
Where in typeobject.c? I looked, and there's a lot of stuff related to slots, but I don't see any caching.
Also I did a speed test on my machine. My results are the same as the ones I've found through Google: __slots__ is not much faster. It's maybe 20% faster, whereas if it was really a dict lookup vs. index lookup I would expect it to be an order magnitude faster, or at least 5 times faster.
To be clear, I'm claiming that every time you do "p.x" with a class with __slots__, at least one dictionary lookup occurs. It's not like p.x in C or Java.
I could be wrong, but I've never heard the claim you're making, and I don't see any evidence it's true.