Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- import time
- print("dict")
- start = time.time()
- d = dict((x, str(x)) for x in range(1000000))
- print("Creation took", time.time() - start, "seconds")
- start = time.time()
- l = list(d)
- for x in l:
- if x % 10 == 0:
- del d[x]
- print("Deleting every tenth key took", time.time() - start, "seconds")
- print("Memory used", sys.getsizeof(d) + sys.getsizeof(l))
- print("OrderedDict")
- from collections import OrderedDict
- start = time.time()
- o = OrderedDict((x, str(x)) for x in range(1000000))
- print("Creation took", time.time() - start, "seconds")
- start = time.time()
- for x in o:
- if x % 10 == 0:
- del o[x]
- print("Deleting every tenth key took", time.time() - start, "seconds")
- print("Memory used", sys.getsizeof(o))
- ------------
- Output:
- dict
- Creation took 0.6176350116729736 seconds
- Deleting every tenth key took 0.24308395385742188 seconds
- Memory used 29666016
- OrderedDict
- Creation took 4.645971059799194 seconds
- Deleting every tenth key took 0.5459740161895752 seconds
- Memory used 118732144
Advertisement
Add Comment
Please, Sign In to add comment