Я использую Python 2.7.5 @Mac OS X 10.9.3 с памятью 8 ГБ и Core i5 1,7 ГГц. Я тестировал потребление времени, как показано ниже.
d = {i:i*2 for i in xrange(10**7*3)} #WARNING: it takes time and consumes a lot of RAM
%time for k in d: k,d[k]
CPU times: user 6.22 s, sys: 10.1 ms, total: 6.23 s
Wall time: 6.23 s
%time for k,v in d.iteritems(): k, v
CPU times: user 7.67 s, sys: 27.1 ms, total: 7.7 s
Wall time: 7.69 s
Кажется, что итераторы медленнее. Мне интересно, в чем преимущество iteritems по прямому доступу к dict.
Обновление: для получения более точного профиля времени
In [23]: %timeit -n 5 for k in d: v=d[k]
5 loops, best of 3: 2.32 s per loop
In [24]: %timeit -n 5 for k,v in d.iteritems(): v
5 loops, best of 3: 2.33 s per loop