code: def values(self, key=_absent):
          
          if key is not _absent and key in self._map:
              return self.getlist(key)
          return list(self.itervalues())
docs: Raises: KeyError if <key> is provided and not in the dictionary.
          Returns: List created from itervalues(<key>).If <key> is provided and
            is a dictionary key, only values of items with key <key> are
            returned.