<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def get_column(self, key):
 """Return an iterator to a column. Parameters key : int, str index of the column, or the header of the column. If index is specified, then normal list rules apply. Raises ------ TypeError: If key is not of type `int`, or `str`. Returns ------- iter: Iterator to the specified column. """

        if isinstance(key, int):
            index = key
        elif isinstance(key, basestring):
            index = self.get_column_index(key)
        else:
            raise TypeError(("key must be an int or str, "
                             "not {}").format(type(key).__name__))
        return iter(map(operator.itemgetter(index), self._table))