![]() d.items() returns an iterable of the key,value pairs. d.values() - returns an iterable of all the values in dict (in a random order). d.keys() - returns an iterable of all the keys in dict (in a random order). This forms an alternative to writing if/in logic to check if the key is in.ģ. A 2 parameter form d.get(key, missing-value) specifies what value to return if the key is missing. d.get( key) - retrieves the value for a key, but if the key is not there, returns None by default (vs. len(d) - as you would guess, the number of key/value pairs in the dictĢ. Given a list of strings, return a 'counts' dict ofġ. The code counts the number of occurrences of each word, but many usefulĭict operations will follow this basic loop/in/out pattern. Here is the canonical logic to load up a dict - in this example The type used as key should be "immutable", often a string or int (or tuple when we get to those). The data will become organized by that key, even though it was in random order as it was read. ![]() Strategy: therefore if we are reading a file or a network taking in disorganized data, load the data into a dict choosing the key and value definitions we want to output. If the dict grows to hold 10 million key/value pairs, the speed is largely unchanged. Even if the dict has 1 million key/value pairs in it, performing the get/set/in of single key is very fast. This sort of 'in' works for lists too, but for dicts it's much faster. if 'nj' in d: - use in to check if a key is in the dict or not. Code needs to check that the key is in before doing retrieval.ģ. val = d - referring to d retrieves the value for that key, or is a KeyError. If a pair was in there already, it is overwritten.Ģ. ![]() d = 'California' - with equal-sign: d = xxx creates a key/value pair in the dict. 'dict' is the name of the Python dict type, so we'll use just 'd' as a generic variable name.ĭ = 'California' # 1. Many important algorithms leverage hash tables in some way since they can handle large data sets and remain fast. You will learn how to build and analyze a hash table in CS106B, here we're happy to just use them. The dict here is based on the "hash table" data structure. The dict "dictionary" type is very important because it takes in disorganized data, organizes it,Īnd it is fast.
0 Comments
Leave a Reply. |