xxxxxxxxxx
from collections import defaultdict
d_int = defaultdict(int)
d_list = defaultdict(list)
def foo():
return 'default value'
d_foo = defaultdict(foo)
>>> d_int
defaultdict(<type 'int'>, {})
>>> d_list
defaultdict(<type 'list'>, {})
>>> d_foo
defaultdict(<function foo at 0x7f34a0a69578>, {})
xxxxxxxxxx
>>> from collections import defaultdict
>>> ice_cream = defaultdict(lambda: 'Vanilla')
>>>
>>> ice_cream = defaultdict(lambda: 'Vanilla')
>>> ice_cream['Sarah'] = 'Chunky Monkey'
>>> ice_cream['Abdul'] = 'Butter Pecan'
>>> print ice_cream['Sarah']
Chunky Monkey
>>> print ice_cream['Joe']
Vanilla
>>>
xxxxxxxxxx
"""defaultdict allows us to initialize a dictionary that will assign a
default value to non-existent keys. By supplying the argument int,
we are able to ensure that any non-existent keys are automatically
assigned a default value of 0."""
xxxxxxxxxx
# set default values for all keys
d = collections.defaultdict(lambda:1)
# set default value for a key if not exist - will not modify dictionary
value = d.get(key,default_value)
# if key is in the dictionary: return value
# else: insert the default value as well as return it
dict_trie.setdefault(char,{})
xxxxxxxxxx
from collections import defaultdict
# Declare a defaultdict with a default value of 'Unknown'
data = defaultdict(lambda: 'Unknown')
# Assign values to keys
data['name'] = 'John'
data['age'] = 30
# Accessing keys that do not exist returns the default value
print(data['name']) # Output: John
print(data['city']) # Output: Unknown
xxxxxxxxxx
>>> from collections import defaultdict
>>> food_list = 'spam spam spam spam spam spam eggs spam'.split()
>>> food_count = defaultdict(int) # default value of int is 0
>>> for food in food_list:
food_count[food] += 1 # increment element's value by 1
defaul
xxxxxxxxxx
>>> from collections import defaultdict
>>> d = {'foo': 123, 'bar': 456}
>>> d['baz']
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'baz'
>>> d = defaultdict(lambda: -1, d)
>>> d['baz']
-1
xxxxxxxxxx
# Python program to demonstrate
# defaultdict
from collections import defaultdict
# Function to return a default
# values for keys that is not
# present
def def_value():
return "Not Present"
# Defining the dict
d = defaultdict(def_value)
d["a"] = 1
d["b"] = 2
print(d["a"]) # 1
print(d["b"]) # 2
print(d["c"]) # Not Present
xxxxxxxxxx
>>> from collections import defaultdict
>>> food_list = 'spam spam spam spam spam spam eggs spam'.split()
>>> food_count = defaultdict(int) # default value of int is 0
>>> for food in food_list:
food_count[food] += 1 # increment element's value by 1
defaultdict(<type 'int'>, {'eggs': 1, 'spam': 7})
>>>