Skip to content

Instantly share code, notes, and snippets.

@Adirio
Created November 24, 2016 07:39
Show Gist options
  • Save Adirio/4e566b7570ccdb044a5c25eec9fd3ccd to your computer and use it in GitHub Desktop.
Save Adirio/4e566b7570ccdb044a5c25eec9fd3ccd to your computer and use it in GitHub Desktop.
import random
import timeit
t1 = [[random.randint(-100, 100), 0] for n in range(10000)]
t2 = [[random.randint(-100, 100), 0] for n in range(10000)]
print('{:^24} | {:^24}'.format('Dict unpacking', 'List concat'))
for i in range(10):
s1 = timeit.timeit('d = {**dict(t1), **dict(t2)}', number=1000, globals= globals())
s2 = timeit.timeit('d = dict(t1 + t2)', number=1000, globals= globals())
print('{:>20} [s] | {:<20} [s]'.format(s1, s2))
"""
Dict unpacking | List concat
0.8616442901628716 [s] | 0.8781542848391837 [s]
0.8472575716691608 [s] | 0.8787916687937241 [s]
0.848999438460396 [s] | 0.8818265353004335 [s]
0.8478398955683133 [s] | 0.8879287209293807 [s]
0.8516667517484393 [s] | 0.8954026676778994 [s]
0.8610772809813625 [s] | 0.9234632410317545 [s]
0.8664917628698277 [s] | 0.917044915878364 [s]
0.8672644268284557 [s] | 0.8892964710515798 [s]
0.8557634386645532 [s] | 0.8915499223325014 [s]
0.8565915273148903 [s] | 0.8864756459529417 [s]
"""
print('{:^24} | {:^24}'.format('Dict unpacking', 'Dict updating'))
for i in range(10):
s1 = timeit.timeit('d = {**dict(t1), **dict(t2)}', number=1000, globals= globals())
s2 = timeit.timeit('d = dict(t1); d.update(t2)', number=1000, globals= globals())
print('{:>20} [s] | {:<20} [s]'.format(s1, s2))
"""
Dict unpacking | Dict updating
0.8729662419871147 [s] | 0.834746906062378 [s]
0.8501013688440935 [s] | 0.8382886167893275 [s]
0.847772073248052 [s] | 0.8357704396782992 [s]
0.8622331775121665 [s] | 0.8696393019406514 [s]
0.8678635239893993 [s] | 0.8817649117944484 [s]
0.8997013630098536 [s] | 0.8684148538173986 [s]
0.8556343574746279 [s] | 0.8308821277247489 [s]
0.9734169322433672 [s] | 0.8827789648710223 [s]
0.848005805007233 [s] | 0.8577842520949162 [s]
0.8728422657030706 [s] | 0.8670835673081001 [s]
"""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment