code: def column(self, index_or_label):
          
          if (isinstance(index_or_label, str)
                  and index_or_label not in self.labels):
              raise ValueError(
                  'The column "{}" is not in the table. The table contains '
                  'these columns: {}'
                  .format(index_or_label, ', '.join(self.labels))
              )
          if (isinstance(index_or_label, int)
                  and not 0 <= index_or_label < len(self.labels)):
              raise ValueError(
                  'The index {} is not in the table. Only indices between '
                  '0 and {} are valid'
                  .format(index_or_label, len(self.labels) - 1)
              )
  
          return self._columns[self._as_label(index_or_label)]
docs: Return the values of a column as an array.
  
          table.column(label) is equivalent to table[label].
  
          >>> tiles = Table().with_columns(
          ...     'letter', make_array('c', 'd'),
          ...     'count',  make_array(2, 4),
          ... )
  
          >>> list(tiles.column('letter'))
          ['c', 'd']
          >>> tiles.column(1)
          array([2, 4])
  
          Args:
              label (int or str): The index or label of a column
  
          Returns:
              An instance of ``numpy.array``.
  
          Raises:
              ``ValueError``: When the ``index_or_label`` is not in the table.