2011-01-07 18 views
5

ja testował następujący kod z one of my previous questions (turning a list into a dictionary):Właściwy sposób importowania podczas korzystania z timeit?

single = ['key1', 'value1', 'key2', 'value2', 'key3', 'value3'] 

if __name__ == '__main__': 
    from timeit import Timer 
    print Timer("dict(zip(single[::2], single[1::2]))", 
     "from __main__ import single").timeit() 
    print Timer("si = iter(single); dict(izip(si, si))", 
     "from __main__ import single; from itertools import izip").timeit() 

I jestem pewien, czy najlepszych praktyk podczas korzystania timeit jest import izip w Timer „s oświadczenia lub konfiguracji (jestem zakładając instalację, ale koniec Wynik czasowy różni się w zależności od tego, co robię).

Anyways, ja po prostu nadzieję na dodatkowych spostrzeżeniami z wami podczas synchronizacji kodu itp (także po prostu próbuję się uczyć, nie jestem cierpi na przedwczesny optymalizacji lub cokolwiek).

Dzięki.

Odpowiedz

5

Zrób to w konfiguracji. Przecież nie będziesz ponownie importował modułu za każdym razem, gdy tworzysz dict - tylko jeden raz dla całego programu. Nie zależy Ci na czasie importowania modułu.

+0

Nice. Dziękuję Ci. – zachwill

Powiązane problemy