Note 11.3.2.
This workspace is provided for your convenience. You can use this activecode window to try out anything you like.
Method | Parameters | Description |
---|---|---|
keys | none | Returns a view of the keys in the dictionary |
values | none | Returns a view of the values in the dictionary |
items | none | Returns a view of the key-value pairs in the dictionary |
get | key | Returns the value associated with key; None otherwise |
get | key, alt | Returns the value associated with key; alt otherwise |
keys
method returns what Python 3 calls a view of its underlying keys. We can iterate over the view or turn the view into a list by using the list
conversion function.keys
method call in the for
loop — iterating over a dictionary implicitly iterates over its keys.keys
indicate that this method takes no parameters.values
and items
methods are similar to keys
. They return view objects which can be turned into lists or iterated over directly. Note that the items are shown as tuples containing the key and the associated value.in
and not in
operators can test if a key is in the dictionary:in
operator can be very useful, since looking up a non-existent key in a dictionary causes a runtime error.get
method allows us to access the value associated with a key, similar to the [ ]
operator. The important difference is that get
will not cause a runtime error if the key is not present. It will instead return None
. There exists a variation of get
that allows a second parameter that serves as an alternative return value in the case where the key is not present. This can be seen in the final example below. In this case, since “cherries” is not a key, return 0 (instead of None
).mydict = {"cat": 12, "dog": 6, "elephant": 23, "bear": 20}
keylist = list(mydict.keys())
keylist.sort()
print(keylist[3])
keylist
is a list of all the keys which is then sorted. cat
would be at index 1.keylist
is a list of all the keys which is then sorted. dog
would be at index 2.keylist
is a list of all the keys which is then sorted. bear
would be at index 0.mydict = {"cat": 12, "dog": 6, "elephant": 23, "bear": 20}
answer = mydict.get("cat") // mydict.get("dog")
print(answer)
get
returns the value associated with a given key so this divides 12 by 6.get
above. get
returns the value associated with a given key.get
method, not on the dictionary.mydict = {"cat": 12, "dog": 6, "elephant": 23, "bear": 20}
print("dog" in mydict)
dog
is a key in the dictionary.in
operator returns True
if a key is in the dictionary, False
otherwise.mydict = {"cat": 12, "dog": 6, "elephant": 23, "bear": 20}
print(23 in mydict)
in
operator returns True
if a key is in the dictionary, False
otherwise.total = 0
mydict = {"cat": 12, "dog": 6, "elephant": 23, "bear": 20}
for a_key in mydict:
if len(a_key) > 3:
total = total + mydict[a_key]
print(total)
for
statement iterates over the keys. It adds the values of the keys that have length greater than 3.total
starts at 0 but then changes as the iteration proceeds.if
statement only chooses some of them.http://docs.python.org/py3k/library/stdtypes.html#mapping-types-dict