@@ -196,23 +196,31 @@ def read_dict(trials=trials, a={0: 1}):
196196 a [0 ]; a [0 ]; a [0 ]; a [0 ]; a [0 ]
197197 a [0 ]; a [0 ]; a [0 ]; a [0 ]; a [0 ]
198198
199+ def read_strdict (trials = trials , a = {'key' : 1 }):
200+ for t in trials :
201+ a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]
202+ a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]
203+ a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]
204+ a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]
205+ a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]; a ['key' ]
206+
199207def list_append_pop (trials = trials , a = [1 ]):
200208 ap , pop = a .append , a .pop
201209 for t in trials :
202- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
203- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
204- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
205- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
206- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
210+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
211+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
212+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
213+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
214+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
207215
208216def deque_append_pop (trials = trials , a = deque ([1 ])):
209217 ap , pop = a .append , a .pop
210218 for t in trials :
211- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
212- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
213- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
214- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
215- ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ();
219+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
220+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
221+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
222+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
223+ ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop (); ap (1 ); pop ()
216224
217225def deque_append_popleft (trials = trials , a = deque ([1 ])):
218226 ap , pop = a .append , a .popleft
@@ -247,6 +255,14 @@ def write_dict(trials=trials, a={0: 1}):
247255 a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1
248256 a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1 ; a [0 ]= 1
249257
258+ def write_strdict (trials = trials , a = {'key' : 1 }):
259+ for t in trials :
260+ a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1
261+ a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1
262+ a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1
263+ a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1
264+ a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1 ; a ['key' ]= 1
265+
250266def loop_overhead (trials = trials ):
251267 for t in trials :
252268 pass
@@ -266,9 +282,9 @@ def loop_overhead(trials=trials):
266282 write_local , write_nonlocal , write_global ,
267283 write_classvar , write_instancevar , write_instancevar_slots ,
268284 '\n Data structure read access:' ,
269- read_list , read_deque , read_dict ,
285+ read_list , read_deque , read_dict , read_strdict ,
270286 '\n Data structure write access:' ,
271- write_list , write_deque , write_dict ,
287+ write_list , write_deque , write_dict , write_strdict ,
272288 '\n Stack (or queue) operations:' ,
273289 list_append_pop , deque_append_pop , deque_append_popleft ,
274290 '\n Timing loop overhead:' ,
0 commit comments