Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #77750
| From | Terry Reedy <tjreedy@udel.edu> |
|---|---|
| Subject | Re: weakref, memory management and execution slow down in PyQt4 |
| Date | 2014-09-09 22:15 -0400 |
| References | (3 earlier) <540CB15C.2060008@gmail.com> <540CC278.4050106@riseup.net> <540E40FD.8030706@gmail.com> <540E69AF.5040309@riseup.net> <540F1E16.5060003@gmail.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.13914.1410315349.18130.python-list@python.org> (permalink) |
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 comp.lang.python | Previous | Next | Find similar | Unroll thread
Re: weakref, memory management and execution slow down in PyQt4 Terry Reedy <tjreedy@udel.edu> - 2014-09-09 22:15 -0400
csiph-web