Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #77750 > unrolled thread
| Started by | Terry Reedy <tjreedy@udel.edu> |
|---|---|
| First post | 2014-09-09 22:15 -0400 |
| Last post | 2014-09-09 22:15 -0400 |
| Articles | 1 — 1 participant |
Back to article view | Back to comp.lang.python
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: weakref, memory management and execution slow down in PyQt4 Terry Reedy <tjreedy@udel.edu> - 2014-09-09 22:15 -0400
| From | Terry Reedy <tjreedy@udel.edu> |
|---|---|
| Date | 2014-09-09 22:15 -0400 |
| Subject | Re: weakref, memory management and execution slow down in PyQt4 |
| Message-ID | <mailman.13914.1410315349.18130.python-list@python.org> |
On 9/9/2014 11:34 AM, Michael Torrie wrote:
> On 09/08/2014 08:45 PM, kjs wrote:
>> You're right, a dictionary can do everything I need and more.
>
> Actually I am wrong in suggesting a dictionary. A list or an array
> would probably be more appropriate.
>
> Thinking about it this morning, one additional reason why getattr and
> setattr aren't appropriate for this task is that they are not just a
> dictionary lookup under the hood, they are an additional layer. One
> more function call that would be unnecessary if you used a data
> structure directly.
The extra function call for getattr at least doubles the lookup time
>>> repeat("C.a", "class C: a=1")
[0.06093001107618079, 0.042186288111423664, 0.04218598069616064]
>>> repeat("getattr(C, 'a')", "class C: a=1")
[0.13152054655972734, 0.1100451316336688, 0.11021882125309901]
--
Terry Jan Reedy
Back to top | Article view | comp.lang.python
csiph-web